@parca/profile 0.19.139 → 0.19.142
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 +8 -0
- package/dist/GraphTooltipArrow/Content.js +224 -30
- package/dist/GraphTooltipArrow/DockedGraphTooltip/index.js +192 -33
- package/dist/GraphTooltipArrow/ExpandOnHoverValue.js +53 -3
- package/dist/GraphTooltipArrow/index.d.ts.map +1 -1
- package/dist/GraphTooltipArrow/index.js +86 -56
- package/dist/GraphTooltipArrow/useGraphTooltip/index.js +37 -37
- package/dist/GraphTooltipArrow/useGraphTooltipMetaInfo/index.js +103 -73
- package/dist/MatchersInput/SuggestionItem.js +91 -12
- package/dist/MatchersInput/SuggestionsList.d.ts +2 -1
- package/dist/MatchersInput/SuggestionsList.d.ts.map +1 -1
- package/dist/MatchersInput/SuggestionsList.js +371 -157
- package/dist/MatchersInput/SuggestionsList.test.d.ts +2 -0
- package/dist/MatchersInput/SuggestionsList.test.d.ts.map +1 -0
- package/dist/MatchersInput/index.js +308 -115
- package/dist/MetricsCircle/index.js +39 -3
- package/dist/MetricsGraph/MetricsContextMenu/index.js +119 -19
- package/dist/MetricsGraph/MetricsInfoPanel/index.js +81 -20
- package/dist/MetricsGraph/MetricsTooltip/index.d.ts.map +1 -1
- package/dist/MetricsGraph/MetricsTooltip/index.js +107 -74
- package/dist/MetricsGraph/index.js +552 -203
- package/dist/MetricsGraph/useMetricsGraphDimensions.js +46 -25
- package/dist/MetricsGraph/utils/colorMapping.js +24 -17
- package/dist/MetricsSeries/index.js +70 -7
- package/dist/PreSelectedMatchers/index.d.ts.map +1 -1
- package/dist/PreSelectedMatchers/index.js +249 -102
- package/dist/ProfileExplorer/ProfileExplorerCompare.js +240 -49
- package/dist/ProfileExplorer/ProfileExplorerSingle.js +98 -11
- package/dist/ProfileExplorer/index.js +183 -32
- package/dist/ProfileFlameChart/SamplesStrips/SamplesGraph/index.js +333 -148
- package/dist/ProfileFlameChart/SamplesStrips/SamplesStrips.stories.js +69 -35
- package/dist/ProfileFlameChart/SamplesStrips/index.js +645 -134
- package/dist/ProfileFlameChart/SamplesStrips/labelSetUtils.js +114 -55
- package/dist/ProfileFlameChart/index.js +266 -134
- package/dist/ProfileFlameGraph/FlameGraphArrow/ContextMenu.js +287 -88
- package/dist/ProfileFlameGraph/FlameGraphArrow/ContextMenuWrapper.js +56 -20
- package/dist/ProfileFlameGraph/FlameGraphArrow/FlameGraphNodes.js +211 -140
- package/dist/ProfileFlameGraph/FlameGraphArrow/MemoizedTooltip.js +133 -38
- package/dist/ProfileFlameGraph/FlameGraphArrow/MiniMap.js +261 -216
- package/dist/ProfileFlameGraph/FlameGraphArrow/TextWithEllipsis.d.ts.map +1 -1
- package/dist/ProfileFlameGraph/FlameGraphArrow/TextWithEllipsis.js +71 -45
- package/dist/ProfileFlameGraph/FlameGraphArrow/TooltipContext.d.ts.map +1 -1
- package/dist/ProfileFlameGraph/FlameGraphArrow/TooltipContext.js +58 -28
- package/dist/ProfileFlameGraph/FlameGraphArrow/ZoomControls.d.ts.map +1 -1
- package/dist/ProfileFlameGraph/FlameGraphArrow/ZoomControls.js +59 -8
- package/dist/ProfileFlameGraph/FlameGraphArrow/index.js +396 -179
- package/dist/ProfileFlameGraph/FlameGraphArrow/useBatchedRendering.d.ts.map +1 -1
- package/dist/ProfileFlameGraph/FlameGraphArrow/useBatchedRendering.js +68 -50
- package/dist/ProfileFlameGraph/FlameGraphArrow/useMappingList.js +62 -38
- package/dist/ProfileFlameGraph/FlameGraphArrow/useNodeColor.js +14 -6
- package/dist/ProfileFlameGraph/FlameGraphArrow/useScrollViewport.js +124 -82
- package/dist/ProfileFlameGraph/FlameGraphArrow/useVisibleNodes.js +160 -98
- package/dist/ProfileFlameGraph/FlameGraphArrow/useZoom.js +232 -112
- package/dist/ProfileFlameGraph/FlameGraphArrow/utils.js +137 -114
- package/dist/ProfileFlameGraph/benchmarks/benchdata/populateData.js +85 -0
- package/dist/ProfileFlameGraph/index.js +324 -148
- package/dist/ProfileMetricsGraph/hooks/useQueryRange.js +140 -32
- package/dist/ProfileMetricsGraph/index.js +518 -259
- package/dist/ProfileSelector/CompareButton.js +132 -12
- package/dist/ProfileSelector/MetricsGraphSection.js +234 -67
- package/dist/ProfileSelector/index.d.ts.map +1 -1
- package/dist/ProfileSelector/index.js +730 -142
- package/dist/ProfileSelector/useAutoQuerySelector.js +249 -130
- package/dist/ProfileSource.js +230 -163
- package/dist/ProfileTypeSelector/index.js +214 -125
- package/dist/ProfileView/components/ActionButtons/GroupByDropdown.js +50 -4
- package/dist/ProfileView/components/ActionButtons/SortByDropdown.js +139 -33
- package/dist/ProfileView/components/ColorStackLegend.js +184 -55
- package/dist/ProfileView/components/DashboardItems/index.js +87 -28
- package/dist/ProfileView/components/DashboardLayout/index.js +108 -16
- package/dist/ProfileView/components/DiffLegend.js +172 -29
- package/dist/ProfileView/components/GroupByLabelsDropdown/index.js +199 -55
- package/dist/ProfileView/components/InvertCallStack/index.js +99 -10
- package/dist/ProfileView/components/ProfileFilters/filterPresets.js +260 -315
- package/dist/ProfileView/components/ProfileFilters/index.js +518 -215
- package/dist/ProfileView/components/ProfileFilters/useProfileFilters.js +370 -306
- package/dist/ProfileView/components/ProfileFilters/useProfileFiltersUrlState.js +188 -120
- package/dist/ProfileView/components/ProfileHeader/index.js +105 -11
- package/dist/ProfileView/components/ShareButton/ResultBox.js +119 -16
- package/dist/ProfileView/components/ShareButton/index.js +352 -62
- package/dist/ProfileView/components/Toolbars/MultiLevelDropdown.d.ts.map +1 -1
- package/dist/ProfileView/components/Toolbars/MultiLevelDropdown.js +675 -195
- package/dist/ProfileView/components/Toolbars/SwitchMenuItem.js +94 -7
- package/dist/ProfileView/components/Toolbars/TableColumnsDropdown.js +198 -157
- package/dist/ProfileView/components/Toolbars/index.js +441 -21
- package/dist/ProfileView/components/ViewSelector/Dropdown.js +233 -22
- package/dist/ProfileView/components/ViewSelector/index.js +211 -91
- package/dist/ProfileView/components/VisualizationContainer/index.d.ts.map +1 -1
- package/dist/ProfileView/components/VisualizationContainer/index.js +52 -7
- package/dist/ProfileView/components/VisualizationPanel.js +185 -8
- package/dist/ProfileView/context/DashboardContext.js +84 -28
- package/dist/ProfileView/context/ProfileViewContext.js +56 -15
- package/dist/ProfileView/hooks/useAutoSelectDimension.js +71 -41
- package/dist/ProfileView/hooks/useProfileMetadata.js +50 -18
- package/dist/ProfileView/hooks/useResetFlameGraphState.js +31 -10
- package/dist/ProfileView/hooks/useResetStateOnProfileTypeChange.js +72 -29
- package/dist/ProfileView/hooks/useResetStateOnSeriesChange.js +39 -13
- package/dist/ProfileView/hooks/useVisualizationState.js +262 -87
- package/dist/ProfileView/index.js +383 -45
- package/dist/ProfileView/types/visualization.js +1 -13
- package/dist/ProfileView/utils/colorUtils.js +8 -7
- package/dist/ProfileViewWithData.js +332 -237
- package/dist/QueryControls/index.js +418 -47
- package/dist/Sandwich/components/CalleesSection.js +54 -4
- package/dist/Sandwich/components/CallersSection.js +97 -27
- package/dist/Sandwich/components/TableSection.js +77 -4
- package/dist/Sandwich/index.js +125 -12
- package/dist/Sandwich/utils/processRowData.js +48 -39
- package/dist/SelectWithRefresh/index.js +102 -28
- package/dist/SimpleMatchers/Select.js +520 -187
- package/dist/SimpleMatchers/index.js +590 -288
- package/dist/SourceView/Highlighter.js +230 -70
- package/dist/SourceView/LineNo.js +72 -17
- package/dist/SourceView/index.js +177 -101
- package/dist/SourceView/lang-detector/ext-to-lang.json +798 -798
- package/dist/SourceView/lang-detector/index.js +28 -14
- package/dist/SourceView/useSelectedLineRange.js +97 -16
- package/dist/Table/ColorCell.js +42 -1
- package/dist/Table/ColumnsVisibility.js +114 -6
- package/dist/Table/MoreDropdown.js +121 -27
- package/dist/Table/TableContextMenu.js +150 -139
- package/dist/Table/TableContextMenuWrapper.js +59 -14
- package/dist/Table/hooks/useColorManagement.js +58 -16
- package/dist/Table/hooks/useTableConfiguration.d.ts.map +1 -1
- package/dist/Table/hooks/useTableConfiguration.js +331 -168
- package/dist/Table/index.js +222 -126
- package/dist/Table/utils/functions.js +169 -144
- package/dist/Table/utils/topAndBottomExpandedRowModel.js +69 -52
- package/dist/TimelineGuide/index.js +209 -16
- package/dist/TopTable/benchmarks/benchdata/populateData.js +91 -0
- package/dist/TopTable/index.js +340 -122
- package/dist/contexts/LabelsQueryProvider.js +94 -32
- package/dist/contexts/UnifiedLabelsContext.js +114 -49
- package/dist/contexts/utils.js +37 -15
- package/dist/hooks/useCompareModeMeta.js +157 -94
- package/dist/hooks/useLabels.js +295 -52
- package/dist/hooks/useQueryState.js +371 -330
- package/dist/index.js +21 -16
- package/dist/testdata/fg-diff.json +3750 -0
- package/dist/testdata/fg-simple.json +1879 -0
- package/dist/testdata/link_data.json +56 -0
- package/dist/testdata/tabular.json +30 -0
- package/dist/testdata/test_flamegraph.json +26846 -0
- package/dist/testdata/test_graph.json +53 -0
- package/dist/useDelayedLoader.js +32 -18
- package/dist/useGrpcQuery/index.js +71 -11
- package/dist/useHasProfileData.js +90 -12
- package/dist/useQuery.js +205 -64
- package/dist/useSumBy.d.ts.map +1 -1
- package/dist/useSumBy.js +294 -138
- package/dist/utils.js +62 -30
- package/package.json +9 -9
- package/src/GraphTooltipArrow/index.tsx +3 -0
- package/src/MatchersInput/SuggestionsList.test.tsx +70 -0
- package/src/MatchersInput/SuggestionsList.tsx +11 -10
- package/src/MatchersInput/index.tsx +1 -1
- package/src/MetricsGraph/MetricsTooltip/index.tsx +22 -34
- package/src/PreSelectedMatchers/index.tsx +3 -0
- package/src/ProfileFlameGraph/FlameGraphArrow/TextWithEllipsis.tsx +3 -0
- package/src/ProfileFlameGraph/FlameGraphArrow/TooltipContext.tsx +3 -0
- package/src/ProfileFlameGraph/FlameGraphArrow/ZoomControls.tsx +3 -0
- package/src/ProfileFlameGraph/FlameGraphArrow/useBatchedRendering.ts +3 -0
- package/src/ProfileSelector/index.tsx +30 -7
- package/src/ProfileView/components/Toolbars/MultiLevelDropdown.tsx +3 -0
- package/src/ProfileView/components/VisualizationContainer/index.tsx +3 -0
- package/src/Table/hooks/useTableConfiguration.tsx +7 -13
- package/src/useDelayedLoader.ts +10 -10
- package/src/useSumBy.ts +12 -18
- package/dist/ProfileView/components/ProfileFilters/useProfileFiltersUrlState.test.js +0 -541
- package/dist/hooks/useQueryState.test.js +0 -984
|
@@ -1,4 +1,23 @@
|
|
|
1
|
-
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
5
|
+
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
6
|
+
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
7
|
+
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
|
|
8
|
+
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
|
|
9
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
10
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
11
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
12
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
13
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
14
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
15
|
+
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
|
|
16
|
+
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
17
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
18
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
19
|
+
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
20
|
+
import { c as _c } from "react-compiler-runtime";
|
|
2
21
|
// Copyright 2022 The Parca Authors
|
|
3
22
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
23
|
// you may not use this file except in compliance with the License.
|
|
@@ -11,167 +30,362 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
11
30
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
31
|
// See the License for the specific language governing permissions and
|
|
13
32
|
// limitations under the License.
|
|
14
|
-
|
|
33
|
+
|
|
34
|
+
import React, { Fragment, useCallback, useEffect, useState } from 'react';
|
|
15
35
|
import { Transition } from '@headlessui/react';
|
|
16
36
|
import { usePopper } from 'react-popper';
|
|
17
37
|
import { RefreshButton, useParcaContext } from '@parca/components';
|
|
18
38
|
import { TEST_IDS, testId } from '@parca/test-utils';
|
|
19
39
|
import SuggestionItem from './SuggestionItem';
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}
|
|
27
|
-
export
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
40
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
41
|
+
export var Suggestion = /*#__PURE__*/_createClass(function Suggestion(type, typeahead, value) {
|
|
42
|
+
_classCallCheck(this, Suggestion);
|
|
43
|
+
this.type = type;
|
|
44
|
+
this.typeahead = typeahead;
|
|
45
|
+
this.value = value;
|
|
46
|
+
});
|
|
47
|
+
export var Suggestions = /*#__PURE__*/_createClass(function Suggestions() {
|
|
48
|
+
_classCallCheck(this, Suggestions);
|
|
49
|
+
this.literals = [];
|
|
50
|
+
this.labelNames = [];
|
|
51
|
+
this.labelValues = [];
|
|
52
|
+
});
|
|
53
|
+
var LoadingSpinner = function LoadingSpinner() {
|
|
54
|
+
var $ = _c(2);
|
|
55
|
+
var _useParcaContext = useParcaContext(),
|
|
56
|
+
Spinner = _useParcaContext.loader;
|
|
57
|
+
var t0;
|
|
58
|
+
if ($[0] !== Spinner) {
|
|
59
|
+
t0 = /*#__PURE__*/_jsx("div", {
|
|
60
|
+
className: "pt-2 pb-4",
|
|
61
|
+
children: Spinner
|
|
62
|
+
});
|
|
63
|
+
$[0] = Spinner;
|
|
64
|
+
$[1] = t0;
|
|
65
|
+
} else {
|
|
66
|
+
t0 = $[1];
|
|
67
|
+
}
|
|
68
|
+
return t0;
|
|
37
69
|
};
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
70
|
+
var transformLabelsForSuggestions = function transformLabelsForSuggestions(labelNames) {
|
|
71
|
+
var _labelNames$split$pop;
|
|
72
|
+
var shouldTrimPrefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
73
|
+
var trimmedLabel = shouldTrimPrefix ? (_labelNames$split$pop = labelNames.split('.').pop()) !== null && _labelNames$split$pop !== void 0 ? _labelNames$split$pop : labelNames : labelNames;
|
|
74
|
+
return trimmedLabel;
|
|
41
75
|
};
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
},
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
76
|
+
var SuggestionsList = function SuggestionsList(_ref) {
|
|
77
|
+
var _inputRef$current;
|
|
78
|
+
var suggestions = _ref.suggestions,
|
|
79
|
+
applySuggestion = _ref.applySuggestion,
|
|
80
|
+
inputRef = _ref.inputRef,
|
|
81
|
+
runQuery = _ref.runQuery,
|
|
82
|
+
focusedInput = _ref.focusedInput,
|
|
83
|
+
isLabelNamesLoading = _ref.isLabelNamesLoading,
|
|
84
|
+
isLabelValuesLoading = _ref.isLabelValuesLoading,
|
|
85
|
+
_ref$shouldTrimPrefix = _ref.shouldTrimPrefix,
|
|
86
|
+
shouldTrimPrefix = _ref$shouldTrimPrefix === void 0 ? false : _ref$shouldTrimPrefix,
|
|
87
|
+
refetchLabelValues = _ref.refetchLabelValues,
|
|
88
|
+
refetchLabelNames = _ref.refetchLabelNames;
|
|
89
|
+
var _useState = useState(null),
|
|
90
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
91
|
+
popperElement = _useState2[0],
|
|
92
|
+
setPopperElement = _useState2[1];
|
|
93
|
+
var _usePopper = usePopper(inputRef.current, popperElement, {
|
|
94
|
+
placement: 'bottom-start'
|
|
95
|
+
}),
|
|
96
|
+
styles = _usePopper.styles,
|
|
97
|
+
attributes = _usePopper.attributes;
|
|
98
|
+
var _useState3 = useState(-1),
|
|
99
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
100
|
+
highlightedSuggestionIndex = _useState4[0],
|
|
101
|
+
setHighlightedSuggestionIndex = _useState4[1];
|
|
102
|
+
var _useState5 = useState(true),
|
|
103
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
104
|
+
showSuggest = _useState6[0],
|
|
105
|
+
setShowSuggest = _useState6[1];
|
|
106
|
+
var _useState7 = useState(false),
|
|
107
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
108
|
+
isRefetchingValues = _useState8[0],
|
|
109
|
+
setIsRefetchingValues = _useState8[1];
|
|
110
|
+
var _useState9 = useState(false),
|
|
111
|
+
_useState0 = _slicedToArray(_useState9, 2),
|
|
112
|
+
isRefetchingNames = _useState0[0],
|
|
113
|
+
setIsRefetchingNames = _useState0[1];
|
|
114
|
+
var handleRefetchValues = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
115
|
+
return _regenerator().w(function (_context) {
|
|
116
|
+
while (1) switch (_context.p = _context.n) {
|
|
117
|
+
case 0:
|
|
118
|
+
if (!isRefetchingValues) {
|
|
119
|
+
_context.n = 1;
|
|
120
|
+
break;
|
|
121
|
+
}
|
|
122
|
+
return _context.a(2);
|
|
123
|
+
case 1:
|
|
124
|
+
setIsRefetchingValues(true);
|
|
125
|
+
_context.p = 2;
|
|
126
|
+
_context.n = 3;
|
|
127
|
+
return refetchLabelValues();
|
|
128
|
+
case 3:
|
|
129
|
+
_context.p = 3;
|
|
130
|
+
setIsRefetchingValues(false);
|
|
131
|
+
return _context.f(3);
|
|
132
|
+
case 4:
|
|
133
|
+
return _context.a(2);
|
|
134
|
+
}
|
|
135
|
+
}, _callee, null, [[2,, 3, 4]]);
|
|
136
|
+
})), [refetchLabelValues, isRefetchingValues]);
|
|
137
|
+
var handleRefetchNames = useCallback(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
138
|
+
return _regenerator().w(function (_context2) {
|
|
139
|
+
while (1) switch (_context2.p = _context2.n) {
|
|
140
|
+
case 0:
|
|
141
|
+
if (!isRefetchingNames) {
|
|
142
|
+
_context2.n = 1;
|
|
143
|
+
break;
|
|
144
|
+
}
|
|
145
|
+
return _context2.a(2);
|
|
146
|
+
case 1:
|
|
147
|
+
setIsRefetchingNames(true);
|
|
148
|
+
_context2.p = 2;
|
|
149
|
+
_context2.n = 3;
|
|
150
|
+
return refetchLabelNames();
|
|
151
|
+
case 3:
|
|
152
|
+
_context2.p = 3;
|
|
153
|
+
setIsRefetchingNames(false);
|
|
154
|
+
return _context2.f(3);
|
|
155
|
+
case 4:
|
|
156
|
+
return _context2.a(2);
|
|
157
|
+
}
|
|
158
|
+
}, _callee2, null, [[2,, 3, 4]]);
|
|
159
|
+
})), [refetchLabelNames, isRefetchingNames]);
|
|
160
|
+
var suggestionsLength = suggestions.literals.length + suggestions.labelNames.length + suggestions.labelValues.length;
|
|
161
|
+
var getSuggestion = useCallback(function (index) {
|
|
162
|
+
if (index < suggestions.labelNames.length) {
|
|
163
|
+
return suggestions.labelNames[index];
|
|
164
|
+
}
|
|
165
|
+
if (index < suggestions.labelNames.length + suggestions.literals.length) {
|
|
166
|
+
return suggestions.literals[index - suggestions.labelNames.length];
|
|
167
|
+
}
|
|
168
|
+
return suggestions.labelValues[index - suggestions.labelNames.length - suggestions.literals.length];
|
|
169
|
+
}, [suggestions]);
|
|
170
|
+
var resetHighlight = useCallback(function () {
|
|
171
|
+
return setHighlightedSuggestionIndex(-1);
|
|
172
|
+
}, [setHighlightedSuggestionIndex]);
|
|
173
|
+
var applyHighlightedSuggestion = useCallback(function () {
|
|
174
|
+
applySuggestion(getSuggestion(highlightedSuggestionIndex));
|
|
175
|
+
resetHighlight();
|
|
176
|
+
}, [resetHighlight, applySuggestion, highlightedSuggestionIndex, getSuggestion]);
|
|
177
|
+
var applySuggestionWithIndex = useCallback(function (index_0) {
|
|
178
|
+
applySuggestion(getSuggestion(index_0));
|
|
179
|
+
resetHighlight();
|
|
180
|
+
}, [resetHighlight, applySuggestion, getSuggestion]);
|
|
181
|
+
var highlightNext = useCallback(function () {
|
|
182
|
+
var nextIndex = highlightedSuggestionIndex + 1;
|
|
183
|
+
if (nextIndex === suggestionsLength) {
|
|
184
|
+
resetHighlight();
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
setHighlightedSuggestionIndex(nextIndex);
|
|
188
|
+
}, [highlightedSuggestionIndex, suggestionsLength, resetHighlight]);
|
|
189
|
+
var highlightPrevious = useCallback(function () {
|
|
190
|
+
if (highlightedSuggestionIndex === -1) {
|
|
191
|
+
// Didn't select anything, so starting at the bottom.
|
|
192
|
+
setHighlightedSuggestionIndex(suggestionsLength - 1);
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
setHighlightedSuggestionIndex(highlightedSuggestionIndex - 1);
|
|
196
|
+
}, [highlightedSuggestionIndex, suggestionsLength]);
|
|
197
|
+
var handleKeyPress = useCallback(function (event) {
|
|
198
|
+
if (event.key === 'Enter') {
|
|
199
|
+
// Disable new line in the text area
|
|
200
|
+
event.preventDefault();
|
|
201
|
+
}
|
|
202
|
+
// If there is a highlighted suggestion and enter is hit, we complete
|
|
203
|
+
// with the highlighted suggestion.
|
|
204
|
+
if (highlightedSuggestionIndex >= 0 && event.key === 'Enter') {
|
|
205
|
+
applyHighlightedSuggestion();
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
// If no suggestions is highlighted and we hit enter, we run the query,
|
|
209
|
+
// and hide suggestions until another actions enables them again.
|
|
210
|
+
if (highlightedSuggestionIndex === -1 && event.key === 'Enter') {
|
|
211
|
+
setShowSuggest(false);
|
|
212
|
+
runQuery();
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
setShowSuggest(true);
|
|
216
|
+
}, [highlightedSuggestionIndex, applyHighlightedSuggestion, runQuery]);
|
|
217
|
+
var handleKeyDown = useCallback(function (event_0) {
|
|
218
|
+
// Don't need to handle any key interactions if no suggestions there.
|
|
219
|
+
if (suggestionsLength === 0 || !['Tab', 'ArrowUp', 'ArrowDown'].includes(event_0.key)) {
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
event_0.preventDefault();
|
|
223
|
+
|
|
224
|
+
// Handle tabbing through suggestions.
|
|
225
|
+
if (event_0.key === 'Tab' && suggestionsLength > 0) {
|
|
226
|
+
event_0.preventDefault();
|
|
227
|
+
if (event_0.shiftKey) {
|
|
228
|
+
// Shift + tab goes up.
|
|
229
|
+
highlightPrevious();
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
// Just tab goes down.
|
|
233
|
+
highlightNext();
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
// Up arrow highlights previous suggestions.
|
|
237
|
+
if (event_0.key === 'ArrowUp') {
|
|
238
|
+
highlightPrevious();
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
// Down arrow highlights next suggestions.
|
|
242
|
+
if (event_0.key === 'ArrowDown') {
|
|
243
|
+
highlightNext();
|
|
244
|
+
}
|
|
245
|
+
}, [suggestionsLength, highlightNext, highlightPrevious]);
|
|
246
|
+
useEffect(function () {
|
|
247
|
+
var el = inputRef.current;
|
|
248
|
+
if (el == null) {
|
|
249
|
+
return;
|
|
250
|
+
}
|
|
251
|
+
el.addEventListener('keydown', handleKeyDown);
|
|
252
|
+
el.addEventListener('keypress', handleKeyPress);
|
|
253
|
+
return function () {
|
|
254
|
+
el.removeEventListener('keydown', handleKeyDown);
|
|
255
|
+
el.removeEventListener('keypress', handleKeyPress);
|
|
256
|
+
};
|
|
257
|
+
});
|
|
258
|
+
useEffect(function () {
|
|
259
|
+
if (suggestionsLength > 0 && focusedInput) {
|
|
260
|
+
setShowSuggest(true);
|
|
261
|
+
}
|
|
262
|
+
}, [suggestionsLength, focusedInput]);
|
|
263
|
+
return /*#__PURE__*/_jsx(_Fragment, {
|
|
264
|
+
children: suggestionsLength > 0 && /*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({
|
|
265
|
+
ref: setPopperElement,
|
|
266
|
+
style: _objectSpread(_objectSpread({}, styles.popper), {}, {
|
|
267
|
+
marginLeft: 0
|
|
268
|
+
})
|
|
269
|
+
}, attributes.popper), {}, {
|
|
270
|
+
className: "z-50",
|
|
271
|
+
children: /*#__PURE__*/_jsx(Transition, {
|
|
272
|
+
show: focusedInput && showSuggest,
|
|
273
|
+
as: Fragment,
|
|
274
|
+
leave: "transition ease-in duration-100",
|
|
275
|
+
leaveFrom: "opacity-100",
|
|
276
|
+
leaveTo: "opacity-0",
|
|
277
|
+
children: /*#__PURE__*/_jsxs("div", {
|
|
278
|
+
style: {
|
|
279
|
+
width: (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.offsetWidth
|
|
280
|
+
},
|
|
281
|
+
className: "absolute z-10 mt-1 max-h-[400px] rounded-md bg-gray-50 text-base shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none dark:bg-gray-900 sm:text-sm flex flex-col",
|
|
282
|
+
children: [/*#__PURE__*/_jsxs("div", {
|
|
283
|
+
className: "flex-1 overflow-auto min-h-0",
|
|
284
|
+
children: [isLabelNamesLoading ? /*#__PURE__*/_jsx(LoadingSpinner, {}) : suggestions.literals.length === 0 && suggestions.labelValues.length === 0 ? /*#__PURE__*/_jsx(_Fragment, {
|
|
285
|
+
children: suggestions.labelNames.length === 0 ? /*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({
|
|
286
|
+
className: "px-4 py-3 text-sm text-gray-500 dark:text-gray-400 text-center"
|
|
287
|
+
}, testId(TEST_IDS.SUGGESTIONS_NO_RESULTS)), {}, {
|
|
288
|
+
children: "No label names found"
|
|
289
|
+
})) : suggestions.labelNames.map(function (l, i) {
|
|
290
|
+
return /*#__PURE__*/_jsx(SuggestionItem, {
|
|
291
|
+
isHighlighted: highlightedSuggestionIndex === i,
|
|
292
|
+
onHighlight: function onHighlight() {
|
|
293
|
+
return setHighlightedSuggestionIndex(i);
|
|
294
|
+
},
|
|
295
|
+
onApplySuggestion: function onApplySuggestion() {
|
|
296
|
+
return applySuggestionWithIndex(i);
|
|
297
|
+
},
|
|
298
|
+
onResetHighlight: function onResetHighlight() {
|
|
299
|
+
return resetHighlight();
|
|
300
|
+
},
|
|
301
|
+
value: transformLabelsForSuggestions(l.value, shouldTrimPrefix)
|
|
302
|
+
}, transformLabelsForSuggestions(l.value, shouldTrimPrefix));
|
|
303
|
+
})
|
|
304
|
+
}) : /*#__PURE__*/_jsx(_Fragment, {
|
|
305
|
+
children: suggestions.labelNames.map(function (l_0, i_0) {
|
|
306
|
+
return /*#__PURE__*/_jsx(SuggestionItem, {
|
|
307
|
+
isHighlighted: highlightedSuggestionIndex === i_0,
|
|
308
|
+
onHighlight: function onHighlight() {
|
|
309
|
+
return setHighlightedSuggestionIndex(i_0);
|
|
310
|
+
},
|
|
311
|
+
onApplySuggestion: function onApplySuggestion() {
|
|
312
|
+
return applySuggestionWithIndex(i_0);
|
|
313
|
+
},
|
|
314
|
+
onResetHighlight: function onResetHighlight() {
|
|
315
|
+
return resetHighlight();
|
|
316
|
+
},
|
|
317
|
+
value: transformLabelsForSuggestions(l_0.value, shouldTrimPrefix)
|
|
318
|
+
}, transformLabelsForSuggestions(l_0.value, shouldTrimPrefix));
|
|
319
|
+
})
|
|
320
|
+
}), suggestions.literals.map(function (l_1, i_1) {
|
|
321
|
+
return /*#__PURE__*/_jsx(SuggestionItem, {
|
|
322
|
+
isHighlighted: highlightedSuggestionIndex === i_1 + suggestions.labelNames.length,
|
|
323
|
+
onHighlight: function onHighlight() {
|
|
324
|
+
return setHighlightedSuggestionIndex(i_1 + suggestions.labelNames.length);
|
|
325
|
+
},
|
|
326
|
+
onApplySuggestion: function onApplySuggestion() {
|
|
327
|
+
return applySuggestionWithIndex(i_1 + suggestions.labelNames.length);
|
|
328
|
+
},
|
|
329
|
+
onResetHighlight: function onResetHighlight() {
|
|
330
|
+
return resetHighlight();
|
|
331
|
+
},
|
|
332
|
+
value: l_1.value
|
|
333
|
+
}, l_1.value);
|
|
334
|
+
}), isLabelValuesLoading ? /*#__PURE__*/_jsx(LoadingSpinner, {}) : suggestions.labelNames.length === 0 && suggestions.literals.length === 0 ? /*#__PURE__*/_jsx(_Fragment, {
|
|
335
|
+
children: suggestions.labelValues.length === 0 ? /*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({
|
|
336
|
+
className: "px-4 py-3 text-sm text-gray-500 dark:text-gray-400 text-center"
|
|
337
|
+
}, testId(TEST_IDS.SUGGESTIONS_NO_RESULTS)), {}, {
|
|
338
|
+
children: "No label values found"
|
|
339
|
+
})) : suggestions.labelValues.map(function (l_2, i_2) {
|
|
340
|
+
return /*#__PURE__*/_jsx(SuggestionItem, {
|
|
341
|
+
isHighlighted: highlightedSuggestionIndex === i_2 + suggestions.labelNames.length + suggestions.literals.length,
|
|
342
|
+
onHighlight: function onHighlight() {
|
|
343
|
+
return setHighlightedSuggestionIndex(i_2 + suggestions.labelNames.length + suggestions.literals.length);
|
|
344
|
+
},
|
|
345
|
+
onApplySuggestion: function onApplySuggestion() {
|
|
346
|
+
return applySuggestionWithIndex(i_2 + suggestions.labelNames.length + suggestions.literals.length);
|
|
347
|
+
},
|
|
348
|
+
onResetHighlight: function onResetHighlight() {
|
|
349
|
+
return resetHighlight();
|
|
350
|
+
},
|
|
351
|
+
value: l_2.value
|
|
352
|
+
}, l_2.value);
|
|
353
|
+
})
|
|
354
|
+
}) : suggestions.labelValues.map(function (l_3, i_3) {
|
|
355
|
+
return /*#__PURE__*/_jsx(SuggestionItem, {
|
|
356
|
+
isHighlighted: highlightedSuggestionIndex === i_3 + suggestions.labelNames.length + suggestions.literals.length,
|
|
357
|
+
onHighlight: function onHighlight() {
|
|
358
|
+
return setHighlightedSuggestionIndex(i_3 + suggestions.labelNames.length + suggestions.literals.length);
|
|
359
|
+
},
|
|
360
|
+
onApplySuggestion: function onApplySuggestion() {
|
|
361
|
+
return applySuggestionWithIndex(i_3 + suggestions.labelNames.length + suggestions.literals.length);
|
|
362
|
+
},
|
|
363
|
+
onResetHighlight: function onResetHighlight() {
|
|
364
|
+
return resetHighlight();
|
|
365
|
+
},
|
|
366
|
+
value: l_3.value
|
|
367
|
+
}, l_3.value);
|
|
368
|
+
})]
|
|
369
|
+
}), suggestions.literals.length === 0 && suggestions.labelValues.length === 0 && !isLabelNamesLoading && /*#__PURE__*/_jsx(RefreshButton, {
|
|
370
|
+
onClick: function onClick() {
|
|
371
|
+
return void handleRefetchNames();
|
|
372
|
+
},
|
|
373
|
+
disabled: isRefetchingNames,
|
|
374
|
+
title: "Refresh label names",
|
|
375
|
+
testId: "suggestions-refresh-names-button",
|
|
376
|
+
loading: isRefetchingNames
|
|
377
|
+
}), suggestions.labelNames.length === 0 && suggestions.literals.length === 0 && !isLabelValuesLoading && /*#__PURE__*/_jsx(RefreshButton, {
|
|
378
|
+
onClick: function onClick() {
|
|
379
|
+
return void handleRefetchValues();
|
|
380
|
+
},
|
|
381
|
+
disabled: isRefetchingValues,
|
|
382
|
+
title: "Refresh label values",
|
|
383
|
+
testId: "suggestions-refresh-values-button",
|
|
384
|
+
loading: isRefetchingValues
|
|
385
|
+
})]
|
|
386
|
+
})
|
|
387
|
+
})
|
|
388
|
+
}))
|
|
389
|
+
});
|
|
176
390
|
};
|
|
177
|
-
export default SuggestionsList;
|
|
391
|
+
export default SuggestionsList;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SuggestionsList.test.d.ts","sourceRoot":"","sources":["../../src/MatchersInput/SuggestionsList.test.tsx"],"names":[],"mappings":""}
|