diff --git a/eslint-suppressions.json b/eslint-suppressions.json
index 096cff693dd..7c685c24ed5 100644
--- a/eslint-suppressions.json
+++ b/eslint-suppressions.json
@@ -2900,16 +2900,6 @@
"count": 1
}
},
- "public/app/features/explore/PrometheusListView/RawListContainer.tsx": {
- "no-restricted-syntax": {
- "count": 1
- }
- },
- "public/app/features/explore/PrometheusListView/RawListItem.tsx": {
- "react/no-unescaped-entities": {
- "count": 2
- }
- },
"public/app/features/explore/RichHistory/RichHistorySettingsTab.tsx": {
"no-restricted-syntax": {
"count": 1
diff --git a/public/app/features/explore/PrometheusListView/RawListContainer.tsx b/public/app/features/explore/PrometheusListView/RawListContainer.tsx
index 9eef00e1453..92d0110af2e 100644
--- a/public/app/features/explore/PrometheusListView/RawListContainer.tsx
+++ b/public/app/features/explore/PrometheusListView/RawListContainer.tsx
@@ -16,7 +16,11 @@ import {
RawPrometheusListItemEmptyValue,
} from './utils/getRawPrometheusListItemsFromDataFrame';
-export type instantQueryRawVirtualizedListData = { Value: string; __name__: string; [index: string]: string };
+export type instantQueryRawVirtualizedListData = {
+ Value: string;
+ __name__?: string;
+ [index: string]: string | undefined;
+};
export interface RawListContainerProps {
tableResult: DataFrame;
@@ -122,6 +126,7 @@ const RawListContainer = (props: RawListContainerProps) => {
className={styles.switchWrapper}
label={t('explore.raw-list-container.label-expand-results', 'Expand results')}
htmlFor={'isExpandedView'}
+ noMargin
>
{
isExpandedView={isExpandedView}
valueLabels={filteredValueLabels}
totalNumberOfValues={valueLabels.length}
- listKey={items[index].__name__}
+ listKey={items[index].__name__ || `item-${index}`}
listItemData={items[index]}
/>
diff --git a/public/app/features/explore/PrometheusListView/RawListItem.tsx b/public/app/features/explore/PrometheusListView/RawListItem.tsx
index 65a27e128b5..4da433e89ce 100644
--- a/public/app/features/explore/PrometheusListView/RawListItem.tsx
+++ b/public/app/features/explore/PrometheusListView/RawListItem.tsx
@@ -97,7 +97,7 @@ function getQueryValues(allLabels: Pick {
const { __name__, ...allLabels } = listItemData;
// We must know whether it is a utf8 metric name or not
- const isLegacyMetric = isValidLegacyName(__name__);
+ const isLegacyMetric = isValidLegacyName(__name__ ?? '');
const [_, copyToClipboard] = useCopyToClipboard();
const displayLength = valueLabels?.length ?? totalNumberOfValues;
const styles = useStyles2(getStyles, displayLength, isExpandedView);
@@ -142,11 +142,11 @@ const RawListItem = ({ listItemData, listKey, totalNumberOfValues, valueLabels,
- {isLegacyMetric && {__name__}}
+ {!!__name__ && isLegacyMetric && {__name__}}
{`{`}
- {!isLegacyMetric && __name__ !== '' && (
+ {!isLegacyMetric && !!__name__ && __name__ !== '' && (
- "{__name__}"{', '}
+ "{__name__}"{', '}
)}
diff --git a/public/app/features/explore/PrometheusListView/utils/getRawPrometheusListItemsFromDataFrame.test.ts b/public/app/features/explore/PrometheusListView/utils/getRawPrometheusListItemsFromDataFrame.test.ts
index 354ea2407b6..1a32fda03e8 100644
--- a/public/app/features/explore/PrometheusListView/utils/getRawPrometheusListItemsFromDataFrame.test.ts
+++ b/public/app/features/explore/PrometheusListView/utils/getRawPrometheusListItemsFromDataFrame.test.ts
@@ -30,7 +30,7 @@ describe('getRawPrometheusListItemsFromDataFrame', () => {
const result = getRawPrometheusListItemsFromDataFrame(dataFrame);
const differenceBetweenValueAndAttribute = 6;
result.forEach((row) => {
- expect(parseInt(row.attribute, 10)).toEqual(parseInt(row.Value, 10) + differenceBetweenValueAndAttribute);
+ expect(parseInt(row.attribute!, 10)).toEqual(parseInt(row.Value, 10) + differenceBetweenValueAndAttribute);
});
});
});