Skip to content

Commit dcb8cca

Browse files
authored
Clean up generic hooks, use react-use instead (#53822)
As we recently added react-use as a dependency, makes sense to clean up those generic hooks from Kibana repo. Removed custom hooks from kibana_react and other places: useObservable useUnmount useShallowCompareEffect react-use should be used instead: import useObservable from 'react-use/lib/useObservable'
1 parent 650fcda commit dcb8cca

File tree

17 files changed

+27
-322
lines changed

17 files changed

+27
-322
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@
234234
"react-resize-detector": "^4.2.0",
235235
"react-router-dom": "^5.1.2",
236236
"react-sizeme": "^2.3.6",
237-
"react-use": "^13.10.2",
237+
"react-use": "^13.13.0",
238238
"reactcss": "1.2.3",
239239
"redux": "4.0.0",
240240
"redux-actions": "2.2.1",

src/legacy/ui/public/vis/editors/default/components/agg_params.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,11 @@
2020
import React, { useReducer, useEffect, useMemo } from 'react';
2121
import { EuiForm, EuiAccordion, EuiSpacer, EuiFormRow } from '@elastic/eui';
2222
import { i18n } from '@kbn/i18n';
23+
import useUnmount from 'react-use/lib/useUnmount';
2324

2425
import { VisState } from 'ui/vis';
25-
import { aggTypes, AggType, AggParam, AggConfig } from 'ui/agg_types/';
2626
import { IndexPattern } from 'ui/index_patterns';
27+
import { aggTypes, AggType, AggParam, AggConfig } from 'ui/agg_types/';
2728

2829
import { DefaultEditorAggSelect } from './agg_select';
2930
import { DefaultEditorAggParam } from './agg_param';
@@ -44,9 +45,6 @@ import {
4445
} from './agg_params_state';
4546
import { editorConfigProviders } from '../../config/editor_config_providers';
4647
import { FixedParam, TimeIntervalParam, EditorParamConfig } from '../../config/types';
47-
// TODO: Below import is temporary, use `react-use` lib instead.
48-
// eslint-disable-next-line @kbn/eslint/no-restricted-paths
49-
import { useUnmount } from '../../../../../../../plugins/kibana_react/public/util/use_unmount';
5048
import { AggGroupNames } from '../agg_groups';
5149
import { OnAggParamsChange } from './agg_common_props';
5250

src/plugins/expressions/public/expression_renderer.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ import React from 'react';
2222
import classNames from 'classnames';
2323
import { Subscription } from 'rxjs';
2424
import { filter } from 'rxjs/operators';
25+
import useShallowCompareEffect from 'react-use/lib/useShallowCompareEffect';
2526
import { EuiLoadingChart, EuiProgress } from '@elastic/eui';
2627
import theme from '@elastic/eui/dist/eui_theme_light.json';
27-
import { useShallowCompareEffect } from '../../kibana_react/public';
2828
import { IExpressionLoaderParams, IInterpreterRenderHandlers, RenderError } from './types';
2929
import { ExpressionAST } from '../common/types';
3030
import { ExpressionLoader } from './loader';

src/plugins/kibana_react/public/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,4 @@ export * from './overlays';
2525
export * from './ui_settings';
2626
export * from './field_icon';
2727
export * from './table_list_view';
28-
export { toMountPoint, useObservable, useShallowCompareEffect } from './util';
28+
export { toMountPoint } from './util';

src/plugins/kibana_react/public/ui_settings/use_ui_setting.test.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@ import { useUiSetting$ } from './use_ui_setting';
2424
import { createKibanaReactContext } from '../context';
2525
import { KibanaServices } from '../context/types';
2626
import { Subject } from 'rxjs';
27-
import { useObservable } from '../util/use_observable';
2827
import { coreMock } from '../../../../core/public/mocks';
28+
import useObservable from 'react-use/lib/useObservable';
2929

30-
jest.mock('../util/use_observable');
30+
jest.mock('react-use/lib/useObservable');
3131
const useObservableSpy = (useObservable as any) as jest.SpyInstance;
3232
useObservableSpy.mockImplementation((observable, def) => def);
3333

src/plugins/kibana_react/public/ui_settings/use_ui_setting.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
*/
1919

2020
import { useCallback, useMemo } from 'react';
21+
import useObservable from 'react-use/lib/useObservable';
2122
import { useKibana } from '../context';
22-
import { useObservable } from '../util/use_observable';
2323

2424
/**
2525
* Returns the current UI-settings value.

src/plugins/kibana_react/public/util/index.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,4 @@
1717
* under the License.
1818
*/
1919

20-
export * from './use_observable';
21-
export * from './use_unmount';
2220
export * from './react_mount';
23-
export * from './use_shallow_compare_effect';

src/plugins/kibana_react/public/util/use_observable.test.tsx

Lines changed: 0 additions & 54 deletions
This file was deleted.

src/plugins/kibana_react/public/util/use_observable.ts

Lines changed: 0 additions & 34 deletions
This file was deleted.

src/plugins/kibana_react/public/util/use_shallow_compare_effect.test.ts

Lines changed: 0 additions & 86 deletions
This file was deleted.

0 commit comments

Comments
 (0)