chore: some of the eslint rules disabling is removed and types are removed (#2152)

Co-authored-by: Chintan Sudani <46838508+csudani7@users.noreply.github.com>
This commit is contained in:
Palash Gupta 2023-02-03 20:32:22 +05:30 committed by GitHub
parent 62b2462e03
commit 0832bce955
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,9 +1,3 @@
/* eslint-disable @typescript-eslint/no-explicit-any */
/* eslint-disable no-bitwise */
/* eslint-disable sonarjs/no-identical-functions */
/* eslint-disable no-param-reassign */
/* eslint-disable react/no-array-index-key */
/* eslint-disable react-hooks/exhaustive-deps */
import { CloseOutlined, CloseSquareOutlined } from '@ant-design/icons'; import { CloseOutlined, CloseSquareOutlined } from '@ant-design/icons';
import { Button, Input, Select } from 'antd'; import { Button, Input, Select } from 'antd';
import CategoryHeading from 'components/Logs/CategoryHeading'; import CategoryHeading from 'components/Logs/CategoryHeading';
@ -12,7 +6,7 @@ import {
QueryOperatorsMultiVal, QueryOperatorsMultiVal,
QueryOperatorsSingleVal, QueryOperatorsSingleVal,
} from 'lib/logql/tokens'; } from 'lib/logql/tokens';
import React, { useMemo } from 'react'; import React, { useCallback, useMemo } from 'react';
import { useSelector } from 'react-redux'; import { useSelector } from 'react-redux';
import { AppState } from 'store/reducers'; import { AppState } from 'store/reducers';
import { ILogsReducer } from 'types/reducer/logs'; import { ILogsReducer } from 'types/reducer/logs';
@ -52,7 +46,7 @@ function QueryConditionField({
interface QueryFieldProps { interface QueryFieldProps {
query: Query; query: Query;
queryIndex: number; queryIndex: number;
onUpdate: (query: unknown, queryIndex: number) => void; onUpdate: (query: Query, queryIndex: number) => void;
onDelete: (queryIndex: number) => void; onDelete: (queryIndex: number) => void;
} }
function QueryField({ function QueryField({
@ -64,34 +58,39 @@ function QueryField({
const { const {
fields: { selected }, fields: { selected },
} = useSelector<AppState, ILogsReducer>((store) => store.logs); } = useSelector<AppState, ILogsReducer>((store) => store.logs);
const getFieldType = (inputKey: string): string => { const getFieldType = useCallback(
// eslint-disable-next-line no-restricted-syntax (inputKey: string): string => {
for (const selectedField of selected) { const selectedField = selected.find((field) => inputKey === field.name);
if (inputKey === selectedField.name) { if (selectedField) {
return selectedField.type; return selectedField.type;
} }
}
return ''; return '';
}; },
[selected],
);
const fieldType = useMemo(() => getFieldType(query[0].value as string), [ const fieldType = useMemo(() => getFieldType(query[0].value as string), [
getFieldType,
query, query,
]); ]);
const handleChange = (qIdx: number, value: string): void => { const handleChange = (qIdx: number, value: string): void => {
query[qIdx].value = value || ''; const updatedQuery = [...query];
updatedQuery[qIdx].value = value || '';
if (qIdx === 1) { if (qIdx === 1) {
if (Object.values(QueryOperatorsMultiVal).includes(value)) { if (Object.values(QueryOperatorsMultiVal).includes(value)) {
if (!Array.isArray(query[2].value)) { if (!Array.isArray(updatedQuery[2].value)) {
query[2].value = []; updatedQuery[2].value = [];
} }
} else if ( } else if (
Object.values(QueryOperatorsSingleVal).includes(value) && Object.values(QueryOperatorsSingleVal).includes(value) &&
Array.isArray(query[2].value) Array.isArray(updatedQuery[2].value)
) { ) {
query[2].value = ''; updatedQuery[2].value = '';
} }
} }
onUpdate(query, queryIndex); onUpdate(updatedQuery, queryIndex);
}; };
const handleClear = (): void => { const handleClear = (): void => {
@ -210,16 +209,16 @@ function QueryBuilder({
if (Array.isArray(query) && query.length > 1) { if (Array.isArray(query) && query.length > 1) {
result.push( result.push(
<QueryField <QueryField
key={keyPrefix + idx} key={keyPrefix}
query={query as never} query={query}
queryIndex={idx} queryIndex={idx}
onUpdate={handleUpdate as never} onUpdate={handleUpdate}
onDelete={handleDelete} onDelete={handleDelete}
/>, />,
); );
} else { } else {
result.push( result.push(
<div key={keyPrefix + idx}> <div key={keyPrefix}>
<QueryConditionField <QueryConditionField
query={Array.isArray(query) ? query[0] : query} query={Array.isArray(query) ? query[0] : query}
queryIndex={idx} queryIndex={idx}