[Security Solution] move value lists management flyout file to detection engine folder (#222463)

## Summary

A few files were missed in this previous
[PR](https://github.com/elastic/kibana/pull/221867) and are now moved to
their correct folders:
- most of them were moved to
`detection_engine/rule_management_ui/components`
- a couple of files were moved under `common/components` as they are
used both within the `detection_engine` folder and the `exceptions`
folder

_**No code changes are implemented whatsoever!**_

**_If there are any folders or files that you feel should live in a
specific folder, let me know. I'm happy to move things around some
more!_**

### Checklist

- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
This commit is contained in:
Philippe Oberti 2025-06-05 12:41:08 -05:00 committed by GitHub
parent 2ec8ca00b4
commit 488db8b211
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 24 additions and 24 deletions

2
.github/CODEOWNERS vendored
View file

@ -2552,7 +2552,7 @@ x-pack/test/security_solution_cypress/cypress/tasks/expandable_flyout @elastic/
/x-pack/test/functional/es_archives/entity/host_risk @elastic/security-detection-engine /x-pack/test/functional/es_archives/entity/host_risk @elastic/security-detection-engine
/x-pack/test/api_integration/apis/lists @elastic/security-detection-engine /x-pack/test/api_integration/apis/lists @elastic/security-detection-engine
/x-pack/solutions/security/plugins/security_solution/public/value_list @elastic/security-detection-engine /x-pack/solutions/security/plugins/security_solution/public/value_list @elastic/security-detection-engine
/x-pack/solutions/security/plugins/security_solution/public/detections/components/value_lists_management_flyout @elastic/security-detection-engine /x-pack/solutions/security/plugins/security_solution/public/common/components/reference_error_modal @elastic/security-detection-engine
/x-pack/solutions/security/plugins/security_solution/public/common/components/toolbar/bulk_actions @elastic/security-detection-engine /x-pack/solutions/security/plugins/security_solution/public/common/components/toolbar/bulk_actions @elastic/security-detection-engine
/x-pack/solutions/security/plugins/security_solution/public/sourcerer @elastic/security-threat-hunting-investigations /x-pack/solutions/security/plugins/security_solution/public/sourcerer @elastic/security-threat-hunting-investigations

View file

@ -207,6 +207,7 @@ module.exports = {
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]panel[\/\\]index.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]panel[\/\\]index.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]popover_items[\/\\]index.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]popover_items[\/\\]index.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]progress_inline[\/\\]index.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]progress_inline[\/\\]index.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]reference_error_modal[\/\\]reference_error_modal.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]rule_actions_field[\/\\]index.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]rule_actions_field[\/\\]index.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]selectable_text[\/\\]index.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]selectable_text[\/\\]index.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]subtitle[\/\\]index.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]common[\/\\]components[\/\\]subtitle[\/\\]index.tsx/,
@ -289,6 +290,7 @@ module.exports = {
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_management_ui[\/\\]components[\/\\]rules_table[\/\\]rules_table_filters[\/\\]rules_table_filters.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_management_ui[\/\\]components[\/\\]rules_table[\/\\]rules_table_filters[\/\\]rules_table_filters.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_management_ui[\/\\]components[\/\\]rules_table[\/\\]upgrade_prebuilt_rules_table[\/\\]upgrade_prebuilt_rules_table_filters.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_management_ui[\/\\]components[\/\\]rules_table[\/\\]upgrade_prebuilt_rules_table[\/\\]upgrade_prebuilt_rules_table_filters.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_management_ui[\/\\]components[\/\\]rules_table[\/\\]upgrade_prebuilt_rules_table[\/\\]use_ml_jobs_upgrade_modal[\/\\]ml_jobs_upgrade_modal.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_management_ui[\/\\]components[\/\\]rules_table[\/\\]upgrade_prebuilt_rules_table[\/\\]use_ml_jobs_upgrade_modal[\/\\]ml_jobs_upgrade_modal.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_management_ui[\/\\]components[\/\\]value_lists_management_flyout[\/\\]table_helpers.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_management_ui[\/\\]pages[\/\\]rule_management[\/\\]__integration_tests__[\/\\]rules_upgrade[\/\\]test_utils[\/\\]rule_upgrade_test_providers.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_management_ui[\/\\]pages[\/\\]rule_management[\/\\]__integration_tests__[\/\\]rules_upgrade[\/\\]test_utils[\/\\]rule_upgrade_test_providers.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_response_actions[\/\\]response_action_type_form.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_response_actions[\/\\]response_action_type_form.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_response_actions[\/\\]response_actions_form.test.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detection_engine[\/\\]rule_response_actions[\/\\]response_actions_form.test.tsx/,
@ -305,8 +307,6 @@ module.exports = {
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detections[\/\\]components[\/\\]alerts_table[\/\\]additional_filters_action[\/\\]index.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detections[\/\\]components[\/\\]alerts_table[\/\\]additional_filters_action[\/\\]index.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detections[\/\\]components[\/\\]alerts_table[\/\\]index.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detections[\/\\]components[\/\\]alerts_table[\/\\]index.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detections[\/\\]components[\/\\]osquery[\/\\]osquery_flyout.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detections[\/\\]components[\/\\]osquery[\/\\]osquery_flyout.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detections[\/\\]components[\/\\]value_lists_management_flyout[\/\\]reference_error_modal[\/\\]reference_error_modal.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]detections[\/\\]components[\/\\]value_lists_management_flyout[\/\\]table_helpers.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]entity_analytics[\/\\]components[\/\\]asset_criticality[\/\\]asset_criticality_selector.stories.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]entity_analytics[\/\\]components[\/\\]asset_criticality[\/\\]asset_criticality_selector.stories.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]entity_analytics[\/\\]components[\/\\]asset_criticality_file_uploader[\/\\]asset_criticality_file_uploader.stories.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]entity_analytics[\/\\]components[\/\\]asset_criticality_file_uploader[\/\\]asset_criticality_file_uploader.stories.tsx/,
/x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]exceptions[\/\\]components[\/\\]exceptions_utility[\/\\]index.tsx/, /x-pack[\/\\]solutions[\/\\]security[\/\\]plugins[\/\\]security_solution[\/\\]public[\/\\]exceptions[\/\\]components[\/\\]exceptions_utility[\/\\]index.tsx/,

View file

@ -14,7 +14,7 @@ import { useDeleteList, useFindLists } from '@kbn/securitysolution-list-hooks';
import { exportList } from '@kbn/securitysolution-list-api'; import { exportList } from '@kbn/securitysolution-list-api';
import type { ListSchema } from '@kbn/securitysolution-io-ts-list-types'; import type { ListSchema } from '@kbn/securitysolution-io-ts-list-types';
import { TestProviders } from '../../../common/mock'; import { TestProviders } from '../../../../common/mock';
import { ValueListsFlyout } from './flyout'; import { ValueListsFlyout } from './flyout';
jest.mock('@kbn/securitysolution-list-hooks', () => { jest.mock('@kbn/securitysolution-list-hooks', () => {

View file

@ -14,24 +14,24 @@ import {
EuiFlyoutBody, EuiFlyoutBody,
EuiFlyoutFooter, EuiFlyoutFooter,
EuiFlyoutHeader, EuiFlyoutHeader,
EuiTitle,
EuiSpacer, EuiSpacer,
EuiText, EuiText,
EuiTitle,
useGeneratedHtmlId, useGeneratedHtmlId,
} from '@elastic/eui'; } from '@elastic/eui';
import type { ListSchema } from '@kbn/securitysolution-io-ts-list-types'; import type { ListSchema } from '@kbn/securitysolution-io-ts-list-types';
import { useFindLists, useDeleteList, useCursor } from '@kbn/securitysolution-list-hooks'; import { useCursor, useDeleteList, useFindLists } from '@kbn/securitysolution-list-hooks';
import { exportList } from '@kbn/securitysolution-list-api'; import { exportList } from '@kbn/securitysolution-list-api';
import { useKibana } from '../../../common/lib/kibana'; import { useKibana } from '../../../../common/lib/kibana';
import { useAppToasts } from '../../../common/hooks/use_app_toasts'; import { useAppToasts } from '../../../../common/hooks/use_app_toasts';
import * as i18n from './translations'; import * as i18n from './translations';
import { buildColumns } from './table_helpers'; import { buildColumns } from './table_helpers';
import { ValueListsForm } from './form'; import { ValueListsForm } from './form';
import { ReferenceErrorModal } from './reference_error_modal'; import { ReferenceErrorModal } from '../../../../common/components/reference_error_modal';
import { AutoDownload } from '../../../common/components/auto_download/auto_download'; import { AutoDownload } from '../../../../common/components/auto_download/auto_download';
interface ValueListsFlyoutProps { interface ValueListsFlyoutProps {
onClose: () => void; onClose: () => void;

View file

@ -11,7 +11,7 @@ import type { ReactWrapper } from 'enzyme';
import { mount } from 'enzyme'; import { mount } from 'enzyme';
import { waitFor } from '@testing-library/react'; import { waitFor } from '@testing-library/react';
import { TestProviders } from '../../../common/mock'; import { TestProviders } from '../../../../common/mock';
import { ValueListsForm } from './form'; import { ValueListsForm } from './form';
import { useImportList } from '@kbn/securitysolution-list-hooks'; import { useImportList } from '@kbn/securitysolution-list-hooks';

View file

@ -5,16 +5,16 @@
* 2.0. * 2.0.
*/ */
import React, { useCallback, useState, useEffect, useRef } from 'react'; import React, { useCallback, useEffect, useRef, useState } from 'react';
import type { EuiSelectOption } from '@elastic/eui'; import type { EuiSelectOption } from '@elastic/eui';
import { import {
EuiButton, EuiButton,
EuiButtonEmpty, EuiButtonEmpty,
EuiForm,
EuiFormRow,
EuiFilePicker, EuiFilePicker,
EuiFlexGroup, EuiFlexGroup,
EuiFlexItem, EuiFlexItem,
EuiForm,
EuiFormRow,
EuiSelect, EuiSelect,
} from '@elastic/eui'; } from '@elastic/eui';
import type { import type {
@ -22,11 +22,11 @@ import type {
EuiFilePickerProps, EuiFilePickerProps,
} from '@elastic/eui/src/components/form/file_picker/file_picker'; } from '@elastic/eui/src/components/form/file_picker/file_picker';
import type { Type, ListSchema } from '@kbn/securitysolution-io-ts-list-types'; import type { ListSchema, Type } from '@kbn/securitysolution-io-ts-list-types';
import { useImportList } from '@kbn/securitysolution-list-hooks'; import { useImportList } from '@kbn/securitysolution-list-hooks';
import * as i18n from './translations'; import * as i18n from './translations';
import { useKibana } from '../../../common/lib/kibana'; import { useKibana } from '../../../../common/lib/kibana';
export const listFormOptions: EuiSelectOption[] = [ export const listFormOptions: EuiSelectOption[] = [
{ {

View file

@ -10,8 +10,8 @@ import styled from 'styled-components';
import { EuiButtonIcon, EuiLoadingSpinner, EuiToolTip } from '@elastic/eui'; import { EuiButtonIcon, EuiLoadingSpinner, EuiToolTip } from '@elastic/eui';
import type { ListSchema } from '@kbn/securitysolution-io-ts-list-types'; import type { ListSchema } from '@kbn/securitysolution-io-ts-list-types';
import { ShowValueListModal } from '../../../value_list/components/show_value_list_modal'; import { ShowValueListModal } from '../../../../value_list/components/show_value_list_modal';
import { FormattedDate } from '../../../common/components/formatted_date'; import { FormattedDate } from '../../../../common/components/formatted_date';
import * as i18n from './translations'; import * as i18n from './translations';
import type { TableItemCallback, TableProps } from './types'; import type { TableItemCallback, TableProps } from './types';
import { listFormOptions } from './form'; import { listFormOptions } from './form';

View file

@ -22,7 +22,7 @@ import { MissingPrivilegesCallOut } from '../../../../detections/components/call
import { MlJobCompatibilityCallout } from '../../components/ml_job_compatibility_callout'; import { MlJobCompatibilityCallout } from '../../components/ml_job_compatibility_callout';
import { NeedAdminForUpdateRulesCallOut } from '../../../../detections/components/callouts/need_admin_for_update_callout'; import { NeedAdminForUpdateRulesCallOut } from '../../../../detections/components/callouts/need_admin_for_update_callout';
import { AddElasticRulesButton } from '../../components/pre_packaged_rules/add_elastic_rules_button'; import { AddElasticRulesButton } from '../../components/pre_packaged_rules/add_elastic_rules_button';
import { ValueListsFlyout } from '../../../../detections/components/value_lists_management_flyout'; import { ValueListsFlyout } from '../../components/value_lists_management_flyout';
import { useUserData } from '../../../../detections/components/user_info'; import { useUserData } from '../../../../detections/components/user_info';
import { useListsConfig } from '../../../../detections/containers/detection_engine/lists/use_lists_config'; import { useListsConfig } from '../../../../detections/containers/detection_engine/lists/use_lists_config';
import { redirectToDetections } from '../../../common/helpers'; import { redirectToDetections } from '../../../common/helpers';

View file

@ -4,8 +4,8 @@
* 2.0; you may not use this file except in compliance with the Elastic License * 2.0; you may not use this file except in compliance with the Elastic License
* 2.0. * 2.0.
*/ */
import React, { useCallback, useMemo, useState } from 'react';
import type { FC } from 'react'; import type { FC } from 'react';
import React, { useCallback, useMemo, useState } from 'react';
import { import {
EmptyViewerState, EmptyViewerState,
@ -17,12 +17,12 @@ import { useParams } from 'react-router-dom';
import { ExceptionListTypeEnum } from '@kbn/securitysolution-io-ts-list-types'; import { ExceptionListTypeEnum } from '@kbn/securitysolution-io-ts-list-types';
import { SecurityPageName } from '../../../../common/constants'; import { SecurityPageName } from '../../../../common/constants';
import { SpyRoute } from '../../../common/utils/route/spy_routes'; import { SpyRoute } from '../../../common/utils/route/spy_routes';
import { ReferenceErrorModal } from '../../../detections/components/value_lists_management_flyout/reference_error_modal'; import { ReferenceErrorModal } from '../../../common/components/reference_error_modal';
import type { Rule } from '../../../detection_engine/rule_management/logic/types'; import type { Rule } from '../../../detection_engine/rule_management/logic/types';
import { MissingPrivilegesCallOut } from '../../../detections/components/callouts/missing_privileges_callout'; import { MissingPrivilegesCallOut } from '../../../detections/components/callouts/missing_privileges_callout';
import { NotFoundPage } from '../../../app/404'; import { NotFoundPage } from '../../../app/404';
import { AutoDownload } from '../../../common/components/auto_download/auto_download'; import { AutoDownload } from '../../../common/components/auto_download/auto_download';
import { ListWithSearch, ManageRules, LinkToRuleDetails } from '../../components'; import { LinkToRuleDetails, ListWithSearch, ManageRules } from '../../components';
import { useListDetailsView } from '../../hooks'; import { useListDetailsView } from '../../hooks';
import * as i18n from '../../translations'; import * as i18n from '../../translations';
import type { CheckExceptionTtlActionTypes } from '../../components/expired_exceptions_list_items_modal'; import type { CheckExceptionTtlActionTypes } from '../../components/expired_exceptions_list_items_modal';

View file

@ -42,7 +42,7 @@ import {
ListsSearchBar, ListsSearchBar,
} from '../../components'; } from '../../components';
import { useAllExceptionLists } from '../../hooks/use_all_exception_lists'; import { useAllExceptionLists } from '../../hooks/use_all_exception_lists';
import { ReferenceErrorModal } from '../../../detections/components/value_lists_management_flyout/reference_error_modal'; import { ReferenceErrorModal } from '../../../common/components/reference_error_modal';
import { patchRule } from '../../../detection_engine/rule_management/api/api'; import { patchRule } from '../../../detection_engine/rule_management/api/api';
import { getSearchFilters } from '../../../detection_engine/rule_management_ui/components/rules_table/helpers'; import { getSearchFilters } from '../../../detection_engine/rule_management_ui/components/rules_table/helpers';
@ -623,7 +623,7 @@ export const SharedLists = React.memo(() => {
</EuiFlexItem> </EuiFlexItem>
</EuiFlexGroup> </EuiFlexGroup>
</EuiFlexItem> </EuiFlexItem>
<EuiFlexItem style={{ alignItems: 'flex-end' }}> <EuiFlexItem css={{ alignItems: 'flex-end' }}>
<EuiFlexGroup alignItems="flexEnd"> <EuiFlexGroup alignItems="flexEnd">
<EuiFlexItem> <EuiFlexItem>
<EuiPagination <EuiPagination