ydb-embedded-ui 3.2.2 → 3.2.3
Sign up to get free protection for your applications and to get access to all the features.
package/CHANGELOG.md
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## [3.2.3](https://github.com/ydb-platform/ydb-embedded-ui/compare/v3.2.2...v3.2.3) (2023-01-16)
|
4
|
+
|
5
|
+
|
6
|
+
### Bug Fixes
|
7
|
+
|
8
|
+
* fix crash on invalid search query ([4d6f551](https://github.com/ydb-platform/ydb-embedded-ui/commit/4d6f551fa4348a05ca3d8d2d6bd8b52ccb6310ee))
|
9
|
+
|
3
10
|
## [3.2.2](https://github.com/ydb-platform/ydb-embedded-ui/compare/v3.2.1...v3.2.2) (2023-01-13)
|
4
11
|
|
5
12
|
|
@@ -2,6 +2,7 @@ import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
3
3
|
import cn from 'bem-cn-lite';
|
4
4
|
import {connect} from 'react-redux';
|
5
|
+
import {escapeRegExp} from 'lodash/fp';
|
5
6
|
|
6
7
|
import DataTable from '@yandex-cloud/react-data-table';
|
7
8
|
import {Loader, TextInput, Label} from '@gravity-ui/uikit';
|
@@ -126,7 +127,7 @@ class Nodes extends React.Component {
|
|
126
127
|
|
127
128
|
let preparedNodes = searchQuery
|
128
129
|
? nodes.filter((node) => {
|
129
|
-
const re = new RegExp(searchQuery, 'i');
|
130
|
+
const re = new RegExp(escapeRegExp(searchQuery), 'i');
|
130
131
|
return node.Host ? re.test(node.Host) || re.test(String(node.NodeId)) : true;
|
131
132
|
})
|
132
133
|
: nodes;
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import {useCallback, useEffect, useState} from 'react';
|
2
2
|
import {useDispatch} from 'react-redux';
|
3
3
|
import block from 'bem-cn-lite';
|
4
|
+
import { escapeRegExp } from 'lodash/fp';
|
4
5
|
|
5
6
|
import DataTable, {Column} from '@yandex-cloud/react-data-table';
|
6
7
|
|
@@ -73,7 +74,7 @@ export const Consumers = ({path, type}: ConsumersProps) => {
|
|
73
74
|
const filterConsumersByName = (search: string) => {
|
74
75
|
const filteredConsumers = search
|
75
76
|
? consumers.filter((consumer) => {
|
76
|
-
const re = new RegExp(search, 'i');
|
77
|
+
const re = new RegExp(escapeRegExp(search), 'i');
|
77
78
|
return re.test(consumer.name);
|
78
79
|
})
|
79
80
|
: consumers;
|
@@ -3,6 +3,7 @@ import PropTypes from 'prop-types';
|
|
3
3
|
import cn from 'bem-cn-lite';
|
4
4
|
import {connect} from 'react-redux';
|
5
5
|
import _ from 'lodash';
|
6
|
+
import {escapeRegExp} from 'lodash/fp';
|
6
7
|
|
7
8
|
import DataTable from '@yandex-cloud/react-data-table';
|
8
9
|
import {Loader, TextInput, Button} from '@gravity-ui/uikit';
|
@@ -125,7 +126,7 @@ class Tenants extends React.Component {
|
|
125
126
|
} = this.props;
|
126
127
|
|
127
128
|
const filteredTenantsBySearch = tenants.filter((item) => {
|
128
|
-
const re = new RegExp(searchQuery, 'i');
|
129
|
+
const re = new RegExp(escapeRegExp(searchQuery), 'i');
|
129
130
|
return re.test(item.Name) || re.test(this.getControlPlaneValue(item));
|
130
131
|
});
|
131
132
|
const filteredTenants = Tenants.filterTenants(filteredTenantsBySearch, filter);
|