Commit graph

308 commits

Author SHA1 Message Date
Kibana Machine
f60eaef1fc
[8.16] [Security Solution][Detection Engine] Fix importing rules with multiple types of exception lists (#198868) (#200085)
# Backport

This will backport the following commits from `main` to `8.16`:
- [[Security Solution][Detection Engine] Fix importing rules with
multiple types of exception lists
(#198868)](https://github.com/elastic/kibana/pull/198868)

<!--- Backport version: 9.4.3 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Marshall
Main","email":"55718608+marshallmain@users.noreply.github.com"},"sourceCommit":{"committedDate":"2024-11-13T20:01:18Z","message":"[Security
Solution][Detection Engine] Fix importing rules with multiple types of
exception lists (#198868)\n\n## Summary\r\n\r\nFixes
https://github.com/elastic/kibana/issues/198461\r\n\r\nWhen a rule
import file has both single-namespace and
namespace-agnostic\r\nexception lists, there was a bug in the logic that
fetched the existing\r\nexception lists after importing them. A missing
set of parentheses\r\ncaused a KQL query that should have read `(A OR B)
AND (C OR D)` to be\r\n`(A OR B) AND C OR D`, meaning that the logic was
satisfied by `D` alone\r\ninstead of requiring `A` or `B` to be true
along with `D`. In this case\r\n`A` and `B` are filters on
`exception-list` and\r\n`exception-list-agnostic` SO attributes so that
we (should) only be\r\nlooking at the list container objects,
i.e.\r\n`exception-list.attributes.list_type: list`. `C` and `D` are
filters by\r\n`list_id`, e.g. `exception-list.attributes.list_id:
(test_list_id)`.\r\nWithout the extra parentheses around `C OR D`, the
query finds both\r\n`list` and `item` documents for the list IDs
specified in `D`.\r\n\r\nWhen the `findExceptionList` logic encounters a
list item unexpectedly,\r\nit still tries to convert the SO into our
internal representation of an\r\nexception list with
`transformSavedObjectToExceptionList`. Most fields\r\nare shared between
lists and items, which makes it confusing to debug.\r\nHowever, the
`type` of items can only be `simple`, whereas lists have a\r\nvariety of
types. During the conversion, the `type` field of the\r\nresulting
object is defaulted to `detection` if the `type` field of the\r\nSO
doesn't match the allowed list type values. Since the related
SDH\r\ninvolved importing a `rule_default` exception list instead, the
list\r\ntypes didn't match up when the import route compared the
exception list\r\non the rule to import vs the \"existing list\" (which
was actually a list\r\nitem coerced into a list container schema with
`type: detection`) and\r\nimport
fails.","sha":"0cc2e5677b46393ffd066ddaa1c548c664af311b","branchLabelMapping":{"^v9.0.0$":"main","^v8.17.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","sdh-linked","backport:prev-major","v8.17.0"],"title":"[Security
Solution][Detection Engine] Fix importing rules with multiple types of
exception
lists","number":198868,"url":"https://github.com/elastic/kibana/pull/198868","mergeCommit":{"message":"[Security
Solution][Detection Engine] Fix importing rules with multiple types of
exception lists (#198868)\n\n## Summary\r\n\r\nFixes
https://github.com/elastic/kibana/issues/198461\r\n\r\nWhen a rule
import file has both single-namespace and
namespace-agnostic\r\nexception lists, there was a bug in the logic that
fetched the existing\r\nexception lists after importing them. A missing
set of parentheses\r\ncaused a KQL query that should have read `(A OR B)
AND (C OR D)` to be\r\n`(A OR B) AND C OR D`, meaning that the logic was
satisfied by `D` alone\r\ninstead of requiring `A` or `B` to be true
along with `D`. In this case\r\n`A` and `B` are filters on
`exception-list` and\r\n`exception-list-agnostic` SO attributes so that
we (should) only be\r\nlooking at the list container objects,
i.e.\r\n`exception-list.attributes.list_type: list`. `C` and `D` are
filters by\r\n`list_id`, e.g. `exception-list.attributes.list_id:
(test_list_id)`.\r\nWithout the extra parentheses around `C OR D`, the
query finds both\r\n`list` and `item` documents for the list IDs
specified in `D`.\r\n\r\nWhen the `findExceptionList` logic encounters a
list item unexpectedly,\r\nit still tries to convert the SO into our
internal representation of an\r\nexception list with
`transformSavedObjectToExceptionList`. Most fields\r\nare shared between
lists and items, which makes it confusing to debug.\r\nHowever, the
`type` of items can only be `simple`, whereas lists have a\r\nvariety of
types. During the conversion, the `type` field of the\r\nresulting
object is defaulted to `detection` if the `type` field of the\r\nSO
doesn't match the allowed list type values. Since the related
SDH\r\ninvolved importing a `rule_default` exception list instead, the
list\r\ntypes didn't match up when the import route compared the
exception list\r\non the rule to import vs the \"existing list\" (which
was actually a list\r\nitem coerced into a list container schema with
`type: detection`) and\r\nimport
fails.","sha":"0cc2e5677b46393ffd066ddaa1c548c664af311b"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/198868","number":198868,"mergeCommit":{"message":"[Security
Solution][Detection Engine] Fix importing rules with multiple types of
exception lists (#198868)\n\n## Summary\r\n\r\nFixes
https://github.com/elastic/kibana/issues/198461\r\n\r\nWhen a rule
import file has both single-namespace and
namespace-agnostic\r\nexception lists, there was a bug in the logic that
fetched the existing\r\nexception lists after importing them. A missing
set of parentheses\r\ncaused a KQL query that should have read `(A OR B)
AND (C OR D)` to be\r\n`(A OR B) AND C OR D`, meaning that the logic was
satisfied by `D` alone\r\ninstead of requiring `A` or `B` to be true
along with `D`. In this case\r\n`A` and `B` are filters on
`exception-list` and\r\n`exception-list-agnostic` SO attributes so that
we (should) only be\r\nlooking at the list container objects,
i.e.\r\n`exception-list.attributes.list_type: list`. `C` and `D` are
filters by\r\n`list_id`, e.g. `exception-list.attributes.list_id:
(test_list_id)`.\r\nWithout the extra parentheses around `C OR D`, the
query finds both\r\n`list` and `item` documents for the list IDs
specified in `D`.\r\n\r\nWhen the `findExceptionList` logic encounters a
list item unexpectedly,\r\nit still tries to convert the SO into our
internal representation of an\r\nexception list with
`transformSavedObjectToExceptionList`. Most fields\r\nare shared between
lists and items, which makes it confusing to debug.\r\nHowever, the
`type` of items can only be `simple`, whereas lists have a\r\nvariety of
types. During the conversion, the `type` field of the\r\nresulting
object is defaulted to `detection` if the `type` field of the\r\nSO
doesn't match the allowed list type values. Since the related
SDH\r\ninvolved importing a `rule_default` exception list instead, the
list\r\ntypes didn't match up when the import route compared the
exception list\r\non the rule to import vs the \"existing list\" (which
was actually a list\r\nitem coerced into a list container schema with
`type: detection`) and\r\nimport
fails.","sha":"0cc2e5677b46393ffd066ddaa1c548c664af311b"}},{"branch":"8.x","label":"v8.17.0","branchLabelMappingKey":"^v8.17.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Marshall Main <55718608+marshallmain@users.noreply.github.com>
2024-11-13 15:49:35 -06:00
Kibana Machine
497e65f78e
[8.x] Use internal user to create list (#196341) (#196427)
# Backport

This will backport the following commits from `main` to `8.x`:
- [Use internal user to create list
(#196341)](https://github.com/elastic/kibana/pull/196341)

<!--- Backport version: 9.4.3 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Khristinin
Nikita","email":"nikita.khristinin@elastic.co"},"sourceCommit":{"committedDate":"2024-10-15T18:59:48Z","message":"Use
internal user to create list (#196341)\n\nRecently there was changes
which restrict creation of dot notation\r\nindices for not operator user
in serverless.\r\n\r\nWe created `.list-${space}` from the current user,
by making API request\r\nfrom UI which is failing right
now\r\n\r\n\r\nThis is quick fix, which use internal user to create
lists.\r\n\r\n\r\nCurrently this check available only on serverless QA,
but there is a\r\nplan to ship it to prod. Which will block the
serverless release, as all\r\ntests failed.\r\n\r\nWe checked on QA env,
that with main branch we can't create those\r\nindices, but with this PR
deployed, it fix
it.","sha":"ceea2ce6a52b1283b31c9342468570844d286f06","branchLabelMapping":{"^v9.0.0$":"main","^v8.16.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","backport:prev-minor"],"title":"Use
internal user to create list
","number":196341,"url":"https://github.com/elastic/kibana/pull/196341","mergeCommit":{"message":"Use
internal user to create list (#196341)\n\nRecently there was changes
which restrict creation of dot notation\r\nindices for not operator user
in serverless.\r\n\r\nWe created `.list-${space}` from the current user,
by making API request\r\nfrom UI which is failing right
now\r\n\r\n\r\nThis is quick fix, which use internal user to create
lists.\r\n\r\n\r\nCurrently this check available only on serverless QA,
but there is a\r\nplan to ship it to prod. Which will block the
serverless release, as all\r\ntests failed.\r\n\r\nWe checked on QA env,
that with main branch we can't create those\r\nindices, but with this PR
deployed, it fix
it.","sha":"ceea2ce6a52b1283b31c9342468570844d286f06"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/196341","number":196341,"mergeCommit":{"message":"Use
internal user to create list (#196341)\n\nRecently there was changes
which restrict creation of dot notation\r\nindices for not operator user
in serverless.\r\n\r\nWe created `.list-${space}` from the current user,
by making API request\r\nfrom UI which is failing right
now\r\n\r\n\r\nThis is quick fix, which use internal user to create
lists.\r\n\r\n\r\nCurrently this check available only on serverless QA,
but there is a\r\nplan to ship it to prod. Which will block the
serverless release, as all\r\ntests failed.\r\n\r\nWe checked on QA env,
that with main branch we can't create those\r\nindices, but with this PR
deployed, it fix
it.","sha":"ceea2ce6a52b1283b31c9342468570844d286f06"}}]}] BACKPORT-->

Co-authored-by: Khristinin Nikita <nikita.khristinin@elastic.co>
2024-10-15 15:45:25 -05:00
Kibana Machine
4c6f2e9317
[8.x] [Security Solution][Detection Engine] Avoid creating list items for empty lines in import list API (#192681) (#194470)
# Backport

This will backport the following commits from `main` to `8.x`:
- [[Security Solution][Detection Engine] Avoid creating list items for
empty lines in import list API
(#192681)](https://github.com/elastic/kibana/pull/192681)

<!--- Backport version: 9.4.3 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Marshall
Main","email":"55718608+marshallmain@users.noreply.github.com"},"sourceCommit":{"committedDate":"2024-09-30T18:07:39Z","message":"[Security
Solution][Detection Engine] Avoid creating list items for empty lines in
import list API (#192681)\n\n## Summary\r\n\r\nThe quickstart tooling
introduced in\r\nhttps://github.com/elastic/kibana/pull/190634 uses
axios under the hood\r\nto make requests to Kibana. When attaching file
data to the axios\r\nrequest with `FormData`, axios adds an extra empty
line after the end\r\ncontent boundary. The logic in `buffer_lines.ts`
assumes that there are\r\nno more lines after the end content boundary
line, so importing a list\r\nwith the quickstart tooling would create a
list with an extra empty\r\nitem. This empty item fails validation when
retrieved through other\r\nAPIs.\r\n\r\nThis PR prevents lines after the
end content boundary from being turned\r\ninto list items in the import
list
API.","sha":"5f83ac05991cd980ef5b205acd19c997b60045a3","branchLabelMapping":{"^v9.0.0$":"main","^v8.16.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:skip","v9.0.0","backport:prev-minor","Team:Detection
Engine","v8.16.0"],"title":"[Security Solution][Detection Engine] Avoid
creating list items for empty lines in import list
API","number":192681,"url":"https://github.com/elastic/kibana/pull/192681","mergeCommit":{"message":"[Security
Solution][Detection Engine] Avoid creating list items for empty lines in
import list API (#192681)\n\n## Summary\r\n\r\nThe quickstart tooling
introduced in\r\nhttps://github.com/elastic/kibana/pull/190634 uses
axios under the hood\r\nto make requests to Kibana. When attaching file
data to the axios\r\nrequest with `FormData`, axios adds an extra empty
line after the end\r\ncontent boundary. The logic in `buffer_lines.ts`
assumes that there are\r\nno more lines after the end content boundary
line, so importing a list\r\nwith the quickstart tooling would create a
list with an extra empty\r\nitem. This empty item fails validation when
retrieved through other\r\nAPIs.\r\n\r\nThis PR prevents lines after the
end content boundary from being turned\r\ninto list items in the import
list
API.","sha":"5f83ac05991cd980ef5b205acd19c997b60045a3"}},"sourceBranch":"main","suggestedTargetBranches":["8.x"],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/192681","number":192681,"mergeCommit":{"message":"[Security
Solution][Detection Engine] Avoid creating list items for empty lines in
import list API (#192681)\n\n## Summary\r\n\r\nThe quickstart tooling
introduced in\r\nhttps://github.com/elastic/kibana/pull/190634 uses
axios under the hood\r\nto make requests to Kibana. When attaching file
data to the axios\r\nrequest with `FormData`, axios adds an extra empty
line after the end\r\ncontent boundary. The logic in `buffer_lines.ts`
assumes that there are\r\nno more lines after the end content boundary
line, so importing a list\r\nwith the quickstart tooling would create a
list with an extra empty\r\nitem. This empty item fails validation when
retrieved through other\r\nAPIs.\r\n\r\nThis PR prevents lines after the
end content boundary from being turned\r\ninto list items in the import
list
API.","sha":"5f83ac05991cd980ef5b205acd19c997b60045a3"}},{"branch":"8.x","label":"v8.16.0","branchLabelMappingKey":"^v8.16.0$","isSourceBranch":false,"state":"NOT_CREATED"}]}]
BACKPORT-->

Co-authored-by: Marshall Main <55718608+marshallmain@users.noreply.github.com>
2024-09-30 14:37:00 -05:00
Kibana Machine
78e9b7652a
[8.x] chore(tsconfig): uncomment option &#x60;moduleDetection&#x60; (#191834) (#193481)
# Backport

This will backport the following commits from `main` to `8.x`:
- [chore(tsconfig): uncomment option &#x60;moduleDetection&#x60;
(#191834)](https://github.com/elastic/kibana/pull/191834)

<!--- Backport version: 9.4.3 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sqren/backport)

<!--BACKPORT [{"author":{"name":"Alejandro Fernández
Haro","email":"alejandro.haro@elastic.co"},"sourceCommit":{"committedDate":"2024-09-19T20:04:14Z","message":"chore(tsconfig):
uncomment option `moduleDetection`
(#191834)","sha":"f8ad0f1ec920600de6ede16e54c2e2aafbe5ce57","branchLabelMapping":{"^v9.0.0$":"main","^v8.16.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["chore","Team:Operations","release_note:skip","Feature:Drilldowns","Team:Fleet","v9.0.0","Team:Search","backport:prev-minor"],"title":"chore(tsconfig):
uncomment option
`moduleDetection`","number":191834,"url":"https://github.com/elastic/kibana/pull/191834","mergeCommit":{"message":"chore(tsconfig):
uncomment option `moduleDetection`
(#191834)","sha":"f8ad0f1ec920600de6ede16e54c2e2aafbe5ce57"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/191834","number":191834,"mergeCommit":{"message":"chore(tsconfig):
uncomment option `moduleDetection`
(#191834)","sha":"f8ad0f1ec920600de6ede16e54c2e2aafbe5ce57"}}]}]
BACKPORT-->

Co-authored-by: Alejandro Fernández Haro <alejandro.haro@elastic.co>
2024-09-20 05:24:14 -05:00
Cee Chen
a88cfc825d
Upgrade EUI to v95.9.0 (#190752)
`v95.7.0`  `v95.9.0`

> [!CAUTION]
> This PR contains the final set of Emotion conversions for all EuiForm
components.
> If your plugin contains any custom CSS/styling to **EuiFormRow,
EuiFormControlLayout, EuiCheckbox, EuiRadio, or EuiSwitch**, ⚠️ make
sure to QA your UI to ensure no visual regressions have occurred! ⚠️

---

## [`v95.9.0`](https://github.com/elastic/eui/releases/v95.9.0)

- Updated `EuiSearchBar`'s optional `box.schema` prop with a new
`recognizedFields` configuration. This allows specifying the phrases
that will be parsed as field clauses
([#7960](https://github.com/elastic/eui/pull/7960))
- Updated `EuiIcon` with a new `tokenSemanticText` glyph
([#7971](https://github.com/elastic/eui/pull/7971))
- Added support for TypeScript 5
([#7980](https://github.com/elastic/eui/pull/7980))

**Bug fixes**

- Fixed `EuiSelectableTemplateSitewide` styles when used within a
dark-themed `EuiHeader`
([#7977](https://github.com/elastic/eui/pull/7977))

## [`v95.8.0`](https://github.com/elastic/eui/releases/v95.8.0)

- Updated `EuiHeaderLinks`'s mobile menu to set a slight popover padding
by default ([#7961](https://github.com/elastic/eui/pull/7961))
- This can be overridden via `popoverProps.panelPaddingSize` if needed.
- Updated `EuiHeaderLink` to default to a size of `s` (down from `m`)
([#7961](https://github.com/elastic/eui/pull/7961))

**Accessibility**

- Updated the `aria-label` attribute for the `EuiFieldSearch` clear
button ([#7970](https://github.com/elastic/eui/pull/7970))

**Bug fixes**

- Fixed a visual bug with `<EuiDualRange showInput="inputWithPopover"
/>` form controls ([#7957](https://github.com/elastic/eui/pull/7957))

**Deprecations**

- Deprecated `EuiFormRow`'s `columnCompressedSwitch` display prop. Use
`columnCompressed` instead, which will automatically account for child
`EuiSwitch`es ([#7968](https://github.com/elastic/eui/pull/7968))
- Deprecated `EuiFormRow`'s `rowCompressed` display prop. Use `row`
instead for vertical forms, or `centerCompressed` for inline forms
([#7968](https://github.com/elastic/eui/pull/7968))
- (Styling) Updated `EuiFormRow`'s `hasEmptySpaceLabel` prop to no
longer attempt to automatically align its content to a vertical center.
Use the `display="center"` prop for that instead
([#7968](https://github.com/elastic/eui/pull/7968))

**CSS-in-JS conversions**

- Converted `EuiFormControlLayout` to Emotion
([#7954](https://github.com/elastic/eui/pull/7954))
- Removed `.euiFormControlLayout--*icons` classNames and
`--eui-form-control-layout-icons-padding` CSS var. Use
`--euiFormControlRightIconsCount` or `--euiFormControlLeftIconsCount`
instead
- Converted `EuiFormLayoutDelimited` to Emotion
([#7957](https://github.com/elastic/eui/pull/7957))
- Fixed `cloneElementWithCss` throwing an error when used multiple times
without a `key` prop ([#7957](https://github.com/elastic/eui/pull/7957))
- Updated `cloneElementWithCss` utility to support a third argument that
allows prepending vs. appending the cloned Emotion css className
([#7957](https://github.com/elastic/eui/pull/7957))
- Removed `@euiFormControlLayoutClearIcon` Sass mixin
([#7959](https://github.com/elastic/eui/pull/7959))
- Converted `EuiDescribedFormGroup` to Emotion
([#7964](https://github.com/elastic/eui/pull/7964))
- Converted `EuiForm`, `EuiFormHelpText`, and `EuiFormErrorText` to
Emotion ([#7966](https://github.com/elastic/eui/pull/7966))
- Converted `EuiFormLabel` and `EuiFormLegend` to Emotion; Removed
`@euiFormLabel` mixin
([#7967](https://github.com/elastic/eui/pull/7967))
- Converted `EuiFormRow` to Emotion
([#7968](https://github.com/elastic/eui/pull/7968))
- Converted `EuiCheckbox` to Emotion
([#7969](https://github.com/elastic/eui/pull/7969))
- Converted `EuiRadio` to Emotion
([#7969](https://github.com/elastic/eui/pull/7969))
- Converted `EuiSwitch` to Emotion
([#7969](https://github.com/elastic/eui/pull/7969))
- Removed the following Sass variables:
([#7969](https://github.com/elastic/eui/pull/7969))
  - `$euiFormCustomControlDisabledIconColor`
  - `$euiFormCustomControlBorderColor`
  - `$euiRadioSize`
  - `$euiCheckBoxSize`
  - `$euiCheckboxBorderRadius`
  - `$euiSwitchHeight` (and compressed/mini variants)
  - `$euiSwitchWidth` (and compressed/mini variants)
  - `$euiSwitchThumbSize` (and compressed/mini variants)
  - `$euiSwitchIconHeight`
  - `$euiSwitchOffColor`
- Removed the following Sass mixins:
([#7969](https://github.com/elastic/eui/pull/7969))
  - `euiIconBackground`
  - `euiCustomControl`
  - `euiCustomControlSelected`
  - `euiCustomControlDisabled`
  - `euiCustomControlFocused`

---------

Co-authored-by: Marta Bondyra <4283304+mbondyra@users.noreply.github.com>
2024-08-30 17:47:17 -07:00
Candace Park
d85069292c
[Security Solution][Event Filters] Fix autocomplete infinite loop bug when deleting the field combobox in event filters form (#189980)
## Summary
- [x] Fixes a bug where the user would not be able to clear out the
Field combo box in the Event Filters form
- [x] Adds a clear out button to the field combo box

Testing steps:
- Navigate to Security > Manage > Event Filters > Add event filter
- Fill out the Field and Value section and select out of the builder
- Try to clear out field either by backspacing the selection or with the
`x` button
- Successfully clear out the field 

# Screenshots

![infinitebug](https://github.com/user-attachments/assets/05c40764-ea93-4650-8273-7212d78889c2)

---------

Co-authored-by: Tomasz Ciecierski <tomasz.ciecierski@elastic.co>
Co-authored-by: Ashokaditya <ashokaditya@elastic.co>
Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2024-08-29 20:31:11 -05:00
Marshall Main
10f4c199ee
[Security Solution][Detection Engine] Fix chunking logic so importing many rules with exception lists works (#190447)
## Summary

@Mikaayenson reported that rule import fails when importing many rules
with exceptions. We are only fetching the first 100 exception lists for
reference verification after importing exceptions from the rule import,
so if there are more than 100 exception lists then they will be imported
but the rules will appear to have a missing exception list reference.

Since we're already processing the rules in chunks, this PR changes the
logic so we fetch exception lists for each chunk of 50 rules
independently. There's still a possibility that 50 rules could have more
than 1000 exception lists referenced and we might run into the same
problem again. To fix the problem permanently we need to update the
exception lists client to support paging through exception lists so we
can reliably fetch all exception lists referenced by a chunk of rules.
However that's a more involved fix that'll have to wait for a follow up
PR.

### Testing
The rule export file below contains 210 rules, each with an exception
list. It triggers the failure when imported on `main` but works with
this PR. Rename the file to `.ndjson` from `.json` - github doesn't
allow uploading `.ndjson` files so I renamed it before uploading here.
[rules_export
(1).json](https://github.com/user-attachments/files/16603839/rules_export.1.json)
2024-08-15 13:15:05 -07:00
Maxim Palenov
a4fc565333
[Security Solution] Align operationId and file names in OpenAPI specs (#189703)
**Relates to:** https://github.com/elastic/kibana/issues/183661 (internal)
**Relates to:** https://github.com/elastic/kibana/issues/183821 (internal)
**Relates to:** https://github.com/elastic/kibana/issues/183837 (internal)

## Summary

It addresses a discussion Rule Management team had on a tech time meeting whose outcome was usage of consistent  operationId, files and folder naming related to OpenAPI specs. For example use `Read` instead of `Get` since it gives better readability and matches with already used approach.

This PR aligns the naming and performs necessary renaming.
2024-08-05 18:11:54 +02:00
Tiago Costa
5859c69bb0
chore(NA): upgrade typescript into v5.1.6 (#186437)
This PR bumps the Typescript version used on Kibana into v5.1.6. The
full set of changes can be found
[here](https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/)
and
[here](https://devblogs.microsoft.com/typescript/announcing-typescript-5-1/).

In order to make assumptions over the codebase and all the type of
errors I choose to mark the failures with `@ts-expect-error` and let
each team decide how to handle it.

There is a list below with the files (and teams those belong to) where
the annotations were added. If each team could provide help of fixing
the ones under their domain it would be fantastic. It can be done in
this PR or in subsequent ones.

Here it goes the list for follow up:

@elastic/kibana-core 
- [ ]
[packages/core/http/core-http-router-server-internal/src/versioned_router/core_versioned_route.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e700e121788da393439b09ccb5dcd68c9fe4bb6b2663f84509e1fc0cdbcfdba9)
- [ ]
[packages/core/notifications/core-notifications-browser-internal/src/toasts/global_toast_list.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-9418144cd53fe450cb5a924b05348ea61af12d7d95a28dda6a22b9058540d11e)

@elastic/kibana-data-discovery 
- [ ]
[packages/kbn-es-query/src/es_query/from_filters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d58aad3fd7135aae181c5cf501f48a27de1c08656e80933d91c00ac9b96033a6)
- [ ]
[src/plugins/field_formats/common/constants/base_formatters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8864ffe2a1866a9c2c0a535057e4e1c39bb4507ffdb2866f23fb6f66b0211cf2)
- [ ]
[src/plugins/field_formats/common/converters/color.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-dad100b5dbd1511598d1b1e01cf6043dd3e5adb2c59ea2f2da5ddc8f0da811f4)
- [ ]
[src/plugins/field_formats/common/utils/geo_utils.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6e35aec0659afb9e67a2767219e792f918bdbd68e0d710c9cb62aa1bce3e8f58)

@elastic/obs-knowledge-team
- [ ]
[packages/kbn-eslint-plugin-i18n/rules/formatted_message_should_start_with_the_right_id.ts](https://github.com/elastic/kibana/pull/186437/files#diff-50a9be879e214228ea2f620e25d170878b91083624f195b52bc3546dd7513863)
- [ ]
[packages/kbn-eslint-plugin-i18n/rules/i18n_translate_should_start_with_the_right_id.ts](https://github.com/elastic/kibana/pull/186437/files#diff-246cad304aec6af53e6d8f5b1a94631cced481a18842b792fd678468b91b4a97)
- [ ]
[packages/kbn-eslint-plugin-i18n/rules/strings_should_be_translated_with_formatted_message.ts](https://github.com/elastic/kibana/pull/186437/files#diff-359f9b0e4e216505f6c4be2202ce3e40c796760735ee21f075c7f364da32c830)
- [ ]
[packages/kbn-eslint-plugin-i18n/rules/strings_should_be_translated_with_i18n.ts](https://github.com/elastic/kibana/pull/186437/files#diff-461be6c6ed7c6dca2880b5bb4a0b46630d92ba15ae053ab5beda06461e28334c)
- [ ]
[packages/kbn-eslint-plugin-telemetry/rules/event_generating_elements_should_be_instrumented.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ecc2ed1c091c51e909b8be3d1bc44b51bf074028dc36eefd7c18511f2a677a70)

@elastic/kibana-esql
- [x]
[packages/kbn-esql-validation-autocomplete/src/definitions/functions.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d45c72297609bbbbde2e3ad05e7f2d01bc3641ebcaed291e2608835bbc488cb5)

@elastic/kibana-management
- [ ]
[packages/kbn-management/settings/components/field_row/description/description.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-c8721036237a95d1884e92898998cd074b1ce11bd47be544a5555508df281131)
- [ ]
[x-pack/plugins/upgrade_assistant/public/application/components/es_deprecations/deprecation_types/reindex/flyout/progress.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-643342b210c85ad16ce48332f8fc4a897f04b360478e0dc85c66764c8dfa2fea)

@elastic/kibana-security
- [x]
[packages/kbn-user-profile-components/src/user_profiles_selectable.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-56f068e23fe0c835822be949e6d5a4b1c3e4c6122674d85edcd755247e8ba5b3)

@elastic/appex-sharedux
- [ ]
[src/plugins/bfetch/public/test_helpers/xhr.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3cbb61cec7f75035395d5839574750039ed9f0c426b4cdc30101584f20679844)

@elastic/kibana-visualizations
- [x]
[src/plugins/chart_expressions/expression_partition_vis/public/__stories__/shared/config.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5b63b4a12b145aa1dd32502a443b78d5d34032b7d1e81c2f2ddc95018ec220a2)
- [x]
[src/plugins/data/common/search/tabify/tabify.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0e813655cdaa11de2798a95e96d1681a3ba3733cd44d6e3ded92e42923a4f8a4)
- [x]
[src/plugins/data/public/search/session/sessions_mgmt/lib/get_expiration_status.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8e383e294d0beacaac5a59bbfb71db2eb34ec19bb17110558892dba4e78c9e5c)
- [x]
[src/plugins/expressions/common/test_helpers/expression_functions/sum.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ecd1d48194777bcf42b216ad9175ed7d27ab42b7534e58e398bd4f69910c7fd0)
- [x]
[src/plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts](https://github.com/elastic/kibana/pull/186437/files#diff-83d6ea7d32a99c1655754bd7aa2b2bd18379336dfd08587d05c3879d94466ca5)
- [x]
[src/plugins/vis_types/heatmap/public/editor/components/heatmap.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-2ccd19b338a26292b3183fedce9ab9f0e0278c70478fe120b4bc8eaf708c1f30)

@elastic/kibana-presentation 
- [ ]
[src/plugins/presentation_util/public/components/floating_actions/floating_actions.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-d9ec87fc178c67a0666faed87b03608fff2de870d3a7426b7d6f32ea467c5efe)

@elastic/response-ops 
- [ ]
[x-pack/examples/triggers_actions_ui_example/public/connector_types/system_log_example/system_log_example_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-844871414a2b89346d98713776d43b6b7748fd09d9bfa29df8db039ef7029c17)
- [ ]
[x-pack/plugins/alerting/public/services/maintenance_windows_api/transform_maintenance_window_response.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8ce933ffaafd5cbb9be4fcebceb103354c6ccef3bf903472bab00aa63df05fbf)
- [ ]
[x-pack/plugins/alerting/server/alerts_client/lib/build_updated_recovered_alert.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-9c6f9f83811a8109a98c135c3c38d5e1f5f4b0ed43c50191c5f3356904f98743)
- [ ]
[x-pack/plugins/alerting/server/application/maintenance_window/methods/archive/archive_maintenance_window.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b5b5bc1b7dcd9f9231fa3106ec0249503878c6fa08beddcdad386bff2de817fd)
- [ ]
[x-pack/plugins/alerting/server/application/maintenance_window/methods/finish/finish_maintenance_window.ts](https://github.com/elastic/kibana/pull/186437/files#diff-be29c2527f016d3e0aa6f7114497b27f01328ba97fe4b8c10687e26274837eab)
- [ ]
[x-pack/plugins/alerting/server/application/maintenance_window/methods/update/update_maintenance_window.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a41ce34fdcee991ff0dadb69b1f79ffdca65a1d403ba61cbe64f9a169dbd71af)
- [ ]
[x-pack/plugins/alerting/server/routes/maintenance_window/apis/archive/archive_maintenance_window_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-77786589c9983c6f73738c8e5727dda1d6d28d1fd43174333f4bc1d6e01aacbb)
- [ ]
[x-pack/plugins/alerting/server/routes/maintenance_window/apis/find/find_maintenance_windows_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-390a8118418248ce86b341bfc983bffe766cde153f3e0af1e50ee3c782d14f32)
- [ ]
[x-pack/plugins/alerting/server/routes/maintenance_window/apis/finish/finish_maintenance_window_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-597891acbb306fdf24fee4a354565e528d48922193bac3a9df2431c242f58801)
- [ ]
[x-pack/plugins/alerting/server/routes/maintenance_window/apis/get/get_maintenance_window_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-424da348dc22e6e40122808ec0dc3be4308311b8b6cf2980612cfe32035bc4b1)
- [ ]
[x-pack/plugins/alerting/server/routes/maintenance_window/apis/get_active/get_active_maintenance_windows_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-2e05b51211b744c4c62f4aa6114f05ae25a58bc7cc9104acb696c31dc079923a)
- [ ]
[x-pack/plugins/alerting/server/routes/maintenance_window/apis/update/update_maintenance_window_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5db167da59aa1095e7addc5a212e5b6d8eb56510ee2e8380d756518b9ed01391)
- [ ]
[x-pack/plugins/alerting/server/rules_client/common/snooze_utils.ts](https://github.com/elastic/kibana/pull/186437/files#diff-00934c9c89eafd3ba6f4dadf6eeb722ffcacfa3d2938d0ad87e0f94d7b74b2c7)
- [x]
[x-pack/plugins/cases/public/components/create/utils.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ee83142469c3a5f01ca2d451d265103d37c6aa674871134274ad19ab524d7bdc)
- [x]
[x-pack/plugins/cases/public/components/system_actions/cases/cases_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-48a40eef52d23999ba7e8f7be4a45b1888e9e23a7e7e2274005106fa512150a5)
- [ ]
[x-pack/plugins/stack_alerts/public/rule_types/components/index_select_popover.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-b5f375535c5a86461c05426871068165875dcf48397cb6e9bd8fbd28887ae01f)
- [ ]
[x-pack/plugins/stack_alerts/public/rule_types/components/source_fields_select.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-590e8e70a0107e1636381c82d9c220f94cfc6f9eb989ff0cf4bf1ab1dbf910ef)
- [ ]
[x-pack/plugins/stack_alerts/public/rule_types/es_query/expression/es_query_expression.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-f8d25e40e49c3e4c349180c07884ab6c32f0632a8e7942e38d0c807ea121ac31)
- [ ]
[x-pack/plugins/stack_alerts/public/rule_types/es_query/expression/esql_query_expression.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-ac4ad1bbcbfd2fea2717f4b5a66026c718e3b1798b9c8ec8de6788a177ee065f)
- [ ]
[x-pack/plugins/stack_alerts/public/rule_types/es_query/expression/expression.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7e37c942e8193d2a6d98ec3f700b4ccd9776e8ca486236db66c2c12003dcba3e)
- [ ]
[x-pack/plugins/stack_alerts/public/rule_types/geo_containment/rule_form/rule_form.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-9aea6a712f0c62b3d537198adb76e919e1d5dcc0ca9a677f5209fb242b711a1c)
- [ ]
[x-pack/plugins/stack_alerts/public/rule_types/threshold/expression.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-98fa95151dfe9b742538a07e55b155ad1ae21a4d0689855fb81777fcb096fa1a)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/cases_webhook/webhook_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-ac3cca4b207b481d51a9d0cd7ea40b6cad60fa3bc65b3f468390dc6c17079e6b)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/email/email_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-df59d955c778b3600f2cc6ab081e23e81111c551a47b49fea17248e361179bad)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/es_index/es_index_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7e43267b14964eac9970e05136122295c94b5b5e3eedc68f2669aa341f5191bb)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/jira/jira_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-6cd6e35801151cdb651ba089a9894d3bd7d11c14f5043e3fec9dcbd5d8cecf84)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/lib/servicenow/helpers.ts](https://github.com/elastic/kibana/pull/186437/files#diff-26ec61b32587b6e6ecae3729aa4aa21b686a98a913f0f9cdc826201e8ccfbb3d)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/opsgenie/close_alert.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-0cc8ad009225394e3646aec29f40ca6b6946f4bfde6c785b574cae2c3b593509)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/opsgenie/create_alert/index.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3242adfea72e5c25b06189b36e4ee140a79925f410954e79d653680869a3b8a3)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/pagerduty/pagerduty_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-e7198fbd573a6103e3f0eaeda983901085a86a49b4d1d6a3888efd4e54a45861)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/resilient/resilient_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-75d81bebd5447946d113884982c084df04022df804a6fa349e3cf1772f77fa90)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/servicenow_itom/servicenow_itom_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7a5300760de357f71a6721045455121deb11b67579fbb5ad17b0f1a579b9127d)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/servicenow_itsm/servicenow_itsm_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-320b09f607fa17dd1bcd84672c8f2f4ff34bc05b981c08cb8db78e1971fad43d)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/servicenow_sir/servicenow_sir_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-fc487b524b7ac74a468beb79134d0c2a07eef7e82dc5e138f082e61aedcca9b5)
- [x]
[x-pack/plugins/stack_connectors/public/connector_types/slack_api/slack_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-01413de2d6e5de199a018b16ded374fd9f12790e4bf4e51ac01ed627915fec0d)
- [ ]
[x-pack/plugins/task_manager/server/monitoring/task_run_statistics.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b1a95078ab7e8f39fb4934879f96292ceb6f82a5bc6bacbca529c4a5444e1665)
- [ ]
[x-pack/plugins/task_manager/server/task_type_dictionary.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b99902e9dfa7d87ad6bf02ee4cda92aad211fd3ecff70ab4393f1a1d92fd9fd9)
- [x]
[x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_form_consumer_selection.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3610e524bbb22f9e7ff338f5d26ec772a6535ae624b3d624afdad42643206864)
- [x]
[x-pack/plugins/triggers_actions_ui/public/common/expression_items/for_the_last.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-f943db0c37a2e9db987e0471ab1e4e05547b05bd1921944725044127123121b9)
- [x]
[x-pack/plugins/triggers_actions_ui/public/common/expression_items/group_by_over.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7458115ab3dc2dd6466775bad827b1dfd8e34d1c4159a188abf6846d37db3dc1)
- [x]
[x-pack/plugins/triggers_actions_ui/public/common/expression_items/of.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3314770802ed035c53a28a0ecc61701f968ac30bb06dcb84290caadab750f1f3)
- [x]
[x-pack/plugins/triggers_actions_ui/public/common/expression_items/threshold.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-e75015dc2f0470d4df164a2a67dd6741614b39713f96aa9335c3c2ea30300110)
- [x]
[x-pack/plugins/triggers_actions_ui/public/common/expression_items/value.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-8f76afb4de6908d9acf5b5e993ca11f23e02836d630be7a0849aa9bf30c39018)
- [ ]
[x-pack/test/alerting_api_integration/spaces_only/tests/alerting/group1/event_log.ts](https://github.com/elastic/kibana/pull/186437/files#diff-70de70757d814d10d09f2ee53aff8409c74d87627732656db8a192a9dc9b44a9)

@elastic/ml-ui 
- [x]
[x-pack/packages/ml/aiops_log_rate_analysis/get_log_rate_analysis_type.ts](https://github.com/elastic/kibana/pull/186437/files#diff-91eed9746e6e89d160dd171be309a72f91c96c5e19068e5afc96961b2d65284d)
- [x]
[x-pack/packages/ml/query_utils/src/build_base_filter_criteria.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e755af1f2f0047f4496a94e6b88d005c34de16a9588f3faba5ef5af7e936ebf2)
- [x]
[x-pack/plugins/aiops/public/components/log_rate_analysis/log_rate_analysis_content/log_rate_analysis_content.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-d21e8cc4c066ea812d2572e693a8490104349261d376275070eaebee0024e18d)
- [x]
[x-pack/plugins/ml/public/application/explorer/explorer_charts/utils/draw_anomaly_explorer_charts_cursor.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5fe3935901f2e0ce9dc834841cd7ed10fe093a83500dd5a8e5e1c58df10ee575)
- [x]
[x-pack/plugins/ml/public/application/jobs/jobs_list/components/datafeed_chart_flyout/datafeed_chart_flyout.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-d1103856290d202f43808e560babeeaaf90f1d50b198315f8117f6b9ed78b7d5)
- [x]
[x-pack/plugins/ml/public/embeddables/job_creation/common/job_details.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-0de793fefb4d9f2483f07b1ca700f81abe3a5e8cedd18edee5d53038734721be)
- [ ]
[x-pack/plugins/ml/scripts/apidoc_scripts/schema_extractor/schema_extractor.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6b4df415cc22862a0f51e0efc5b3ffcd6159dfdedfa4e58d4b8119c0eefa11e0)
- [ ]
[x-pack/plugins/ml/server/lib/alerts/register_anomaly_detection_alert_type.ts](https://github.com/elastic/kibana/pull/186437/files#diff-71fccaf2dd3c66b6270dc3bf286761d17d83648677044bdbcda547f114293f96)
- [x]
[x-pack/plugins/ml/server/models/job_service/jobs.ts](https://github.com/elastic/kibana/pull/186437/files#diff-117572abd5e46abdd015659b9d42d3f567ce194da876b8543c1d7b1b00a31b91)
- [x]
[x-pack/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-25e5edc62ee2a7768685332bd3b716a2a2bfcc6aa4e113169af27e5287364057)

@elastic/search-kibana
- [ ]
[x-pack/plugins/enterprise_search/public/applications/analytics/components/add_analytics_collections/add_analytics_collection_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-932dcfd135690493a73b5ea7672920675cf597533ed9f5caa8c4f5813217b95d)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_collection_view/analytics_collection_data_view_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b6c2a1dd70abcb1ce0b8aa2a4ee7d758d6d8d82acb6d1c1270ddae3065b23db3)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_collection_view/analytics_collection_explore_table_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-feb52400dba49e5b7a64a214458fc3a7af242878368170d9df87921024439e28)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_collection_view/analytics_collection_integrate/api_key_modal/generate_analytics_api_key_modal.logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-807ec904b8b0ee7ec6916501ddc9eaa01adc1c4c83288a76cf652f69582ea050)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_collection_view/analytics_collection_toolbar/analytics_collection_toolbar_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7272575e7ba5c7acaa19bdbdd4608e193dc676b94cd9944c06f5bc69c6cf0930)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_overview/analytics_collections_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0d1c4d240c45aebaa735bb7f06d5311c05274b601c409b2b14454f95d1325621)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/app_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5f62c8eeaf06710e3a73e32a3ac2e687685740ae3e04b73cdf8299d816a75d73)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/analytics/analytics_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-16164984dc6aaccd02e30597a3f3669856a906b10b1c5d539e1d3714647cba47)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/api_logs/api_log/api_log_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-2637e43c60989203ca6007a541e7e4a8ce637158427e4b80cce937e29373fe2b)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/api_logs/api_logs_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-433210633b338895845de7857f0e438d21874088b85075683525943be06b4d33)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/add_domain/add_domain_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-67625817cbc98db8ed97a966a784b7e73812210b8970e3466340ab14ccd8052c)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/crawl_custom_settings_flyout/crawl_custom_settings_flyout_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-050fc78aeb732e9c72fe784e4822a1999164f35bb63feb4ad84dab84a1b3d0a2)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/crawl_select_domains_modal/crawl_select_domains_modal_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-19470ae1eef70cf5a310e85832fb055848dcbd7b27c6a8cf6e3b27bb6e672632)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/domains_table.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-017cd4c0cf7059b8efbec69079694c07d87b7e3b6afc2a840b45acbd805334ee)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/manage_crawls_popover/automatic_crawl_scheduler_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3715fa4fa3d67127e3e30f9809649b0ca5b1f52034aef7cf5f72cf1827066108)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/manage_crawls_popover/manage_crawls_popover_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-bf15713b8a2f0b15ac46684215596244e5834373621546a17f31572cf591cafa)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/crawl_detail_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-bc66c6da767c9005073a9f7fd718ef1125e463aaf6010ebb5972563635fd2710)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/crawler_domains_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5234db544b010f2c0866ba30ad84106cef537ab346713d2dd2857d4d54539eea)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/crawler_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-60292906b206600afee4fdd41bc88ae290ed94213e9b2826433367909622c0e9)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/crawler_single_domain_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-734ea0c74b844227497c80480e713c257be3f5947eefce78fecff62c44007c5a)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/credentials/credentials_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-43869ef7ea914bd42f1983a591bdf394c2de826ebf408be5ade4e369db4da173)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/components/suggestions_logic.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-22886b69abcc90af7bc5d5470b10e70fcbf838c77f7631154ed8d3628f125471)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/curation/curation_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0592460c84735fdb5f214a78a15876d4306c4fa50f5fab7cd0a60a4e74d3af05)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/curations_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b4b801ac411666b925304467a6630dddfa4167ea758c7ed0f0a30d71d0f2205f)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/views/curation_suggestion/curation_suggestion_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-52f01a7141997aa1ba474afb5424bfdf2ffbe705eee8f3a7e5baf75613086381)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/views/curations_history/components/ignored_queries_panel/ignored_queries_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-fe224d354808e91d93cf1ecbfffd3e7f970a73af0527f652dcf8948de26cba3d)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/views/curations_settings/curations_settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8a003b86811ad2113cbd3e7288a2194b8e3039a4f88a481da946a6a11fed51c7)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/document_creation/document_creation_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b71ba6db13e3d95744d92bc36b3776537968e20b0df322ed45d8bdbc0c51d400)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/documents/document_detail_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-eed43fc66e965cff2495e11b5740d750729d5f328382b75541f8722f739cd811)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6b45da7bde43aa8c93f93d2c3ccb27db723eab03f12e27d08bb388f1fe329735)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/engine_creation/engine_creation_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5b8b5bb81b8590358fee0797c082b474939ed2caf853a0fb419737b10cfd4302)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/engine_overview/engine_overview_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-42121d5ecf073610bde08eff5e3290645f48f3299025301219eb49724f88f106)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/audit_logs_modal/audit_logs_modal_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-c35eadf677d47802835ee5496bbdfc62465a9729f6b6f36362dfab90c86c02f1)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/tables/meta_engines_table.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3f85ca056bb6d1b1ad8f69e12f1d7bc1c787e01359ec4f661af121f6a3aeeb37)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/tables/meta_engines_table_expanded_row.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-66cd24bdd2a0fa6ee2f5677ff4e341f3117fa1720765ba58d3e19d485eff1ef2)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/tables/meta_engines_table_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-dba03b6166512f7e454f6ab109ec7dfcb67d6b79fb8450374c310b6a054408b4)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/tables/test_helpers/shared_columns.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3acd3ed82136fb64bb588acb62d372a5322b79cce544cfdcd8b51d37d3b9bc75)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/engines_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0b628318fc6e35cb0c1b995e3f482c7bde5f1cfd58e8cd2fe945c73d30d0068f)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/log_retention/log_retention_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-745974ad84ae42576a8b33d46a5eac0b3cd0b46aee5d62095881986896980cea)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/meta_engine_creation/meta_engine_creation_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e98525f3bf3f2344c9c5a00657e27eb144d99725ac02aac3b1ac80aa92685881)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/multi_input_rows/multi_input_rows_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-f7e0d0d5e8b1eb37740ee5c62bbc704387c4147aa539bc853810e9085d6cb429)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/relevance_tuning/relevance_tuning_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8f932314a95e85fb9e58bdfb28af437b2d3be46a00caa15052d09619f96bf26e)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/result/result_token.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-9166a998b5c1303ade597f246e8ad70391ca5b5f4b7f8284a7fa2aac3144b718)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/result_settings/result_settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-25b0692cb22d32991d999219bcc03873f57e2284a20536a1f33d5b33e3e589ba)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/result_settings/sample_response/sample_response_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-bdc84c70ef71d4206af2a0d091358e70e832510871c5731b855788b479290af5)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-de400b8adb84d4473ce0154f2ce70ecd375320a638098ad8762f4a1504853ffa)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/schema/reindex_job/reindex_job_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3a9731c43c4d5d826ac0cc6889945b0f0515840bc914fcebd5ba5c9babab6540)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/schema/schema_base_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1f5ebe9c073bf1d71e45f037531e2e768939269162485cd8e873175fc623826f)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/schema/schema_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-97064383218315e027edd75fb3294be638513b2dd33686a720d25dcf81480cab)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/schema/schema_meta_engine_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7a2997faf930df6eb55f8ad06257de4bc23ca82c211b7e2c5468c1d7d87539ea)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/search/search_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-17ac74c0f7616bc16c0d0ab9099e7ddc9ea3f46b0c5c889f6866c485a6c5c3e8)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/search_ui/search_ui_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0e79531841906180db0b5c56ef96308ad057a3f948abbfd291564cc895fcba68)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/source_engines/source_engines_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3d2abfe70e0c4230e85a7fd76e524b4fe38c68d99f5125a462cdee199b18d962)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/app_search/components/synonyms/synonyms_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e1c7d85f9983b5706417342b8beedc82e8ee9ef70ba6c9d73a4300f6947660b4)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/applications/components/search_application/add_indices_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-529444e45111837f6bb988d9f7360628c4b8380edda3cc327cce976faabda928)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/applications/components/search_application/connect/generate_api_key_modal/generate_search_application_api_key_modal.logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7cf47fd139eb63cfd8005e77f5443a1d003108150cb629ba18526bbbbf999384)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/applications/components/search_application/search_application_name_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ccd01f44d22293edba039f982513ff00a4221646fcd259b341ffa1ba23b9ffb1)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/applications/components/search_applications/create_search_application_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-665e77c4aac1ed37ef7b7a56c3a00e397e18c2328e6c3b4b197a1e638713a4ab)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/applications/components/search_applications/search_application_indices_flyout_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5b3e4c1cee4fe88660556dcdf24c1b798a58d955ccd6cfc348c463adebc435e2)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/applications/components/search_applications/search_applications_list_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b713b27e34672130767b511020550400f4e6a014f4074f4d133a24e574d0383c)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/__mocks__/ml_models.mock.ts](https://github.com/elastic/kibana/pull/186437/files#diff-51fc7400f9c06bfe66d9facf9c5b7ede20b950b4ea6b3bfe90483a9a9d04379e)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/api/connector/cached_fetch_connector_by_id_api_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d5bd161f3e13a935080e62fab12345cf71787141c84b51683b65203368815baf)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/api/index/cached_fetch_index_api_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8718567dee7cf1c2faac6606078846a61bb816f047f96096588c1037ea00ddd3)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/api/ml_models/cached_fetch_models_api_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e6a0231e6f62f472e2ec5e64222abc2027b350bc2c77541cc431d011865f4aec)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/connector_detail/attach_index_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-79a81a7e0a5f17c62a54b4db76b512559548272ba4ae0e6242a4e56828d980a9)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/connector_detail/connector_name_and_description_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a18949bc9ba6cacb814ea1bf1789044733606c8ce1f365f64b48b8a3d8349a86)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/connectors/connectors_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1e9e7d5ee108b305b6fa421fd0f8096293a747c2d1a4bd5940e62ce6670f7d62)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/method_connector/add_connector_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6f0bb1b86af9c43332d5336db0dca356c6d388d19194c4e6ce64c06cf19c7f3b)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/method_connector/new_connector_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-026a404fcff68f31283634f8f8171732bc933fdb3722920caab7c0be09e65510)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/new_search_index_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8619f347277f8e8aac68a2370d219ed59921a152b4b385f1f0b6054a8419cc21)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/components/generate_api_key_modal/generate_api_key_modal.logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-27a49e3c9216a34e7d4283af21aeefa7fe5ba98fc7edd27fea3f951ecb73e1bd)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_name_and_description/connector_name_and_description_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cbdbbf6c4bcef9cbc55e29e9b4ce40cca08335e955fbd4b101a0e800f484a1c3)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/sync_rules/connector_filtering_logic.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7b1624e663c6afcffdcbf97e05093f14f720e6d16e1aa0cdde701571adcea63b)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/automatic_crawl_scheduler/automatic_crawl_scheduler_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-af7abfa1ebfa988adacb86c9cae8b9d0d4ec964d90018b4eb9bb16de375545d9)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawl_custom_settings_flyout/crawl_custom_settings_flyout_domain_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-060bbb12f4ecde17aee4eb0ab01dcb720241503675d55fe2632c3c1acc4f73ed)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawl_custom_settings_flyout/crawl_custom_settings_flyout_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-fb31bc222ccd5331c7f3dd1dfa7eea9bdf22d37ac97d72f4c7a67436bb810e5b)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawl_custom_settings_flyout/crawl_custom_settings_flyout_multi_crawl_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-80a226902a53fe0e17209a77741f42bd8fed172c1d2735665d0f406e1c93123c)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawl_details_flyout/crawl_detail_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-39c2166d4e03e6d636acfb64863da5d23e27e619cdda4a63e09c493da6eeb25e)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawler_configuration/crawler_configuration_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7da484a261c1c87c9fd813b5d3f5d11edbb36e8949900482dc8610610e2f1478)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawler_domain_detail/authentication_panel/authentication_panel_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0e98ee7ecfa61c14defca8ad0ec2df6a314aedf1fc7d9eb28641977952086ba6)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawler_domain_detail/crawler_domain_detail_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d23490a2df1a98796f27c5626e28083382e9693a17ca9e8cb58418664fdae1ec)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawler_domain_detail/extraction_rules/extraction_rules_logic.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-aa7881c821ad64d7a975816cac4bce44a9da7133da8d36ce26fd2368e7626f8f)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/domain_management/add_domain/add_domain_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5978330358dfdc9eaa88f20d4120ada3191e86f1886238471d9118811295f833)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/domain_management/delete_domain_modal_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-2c57dd1144a4564b34e92cc6716039f97473b99350930e3575ef0518aa3934b9)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/domain_management/domains_table.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-e808b09c9d7389ca1aba6e9c5d13529ef20b428d087fdc8892296a42ad0f2e69)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/index_name_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e9988365f51f1a6c87eef4b1b127cdf111a1968ffe57b6ac33504cbc0171bd91)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/overview.logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a72173f361b17a7293bc83e94385e3bea853e9fbda62f4f5cf553c96b84d90cd)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/ml_inference_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d94da0f264e490e3486a9aa392de72c3988570b79744087f6c5724fc5d7f302c)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/test_pipeline_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-de43e776aa2fd3de8c1bd42e39fbe524ebe85b7287d9ed1355a733557ddb94b7)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout/text_expansion_callout_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-468580957fe38bbdff908443a007a97b5a817dee1cd917becdad1be90c4a3606)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/pipelines_json_configurations_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d77f51637904e4d4672b6b2d7f7ced6df73af142e8ba3fb5a074c700b5cf0fd0)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/pipelines_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-88bb9a545df5ab8a9e354d7b998f3d1ce747d8f755319c822a97a7a61cbb38e5)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/sync_jobs/sync_jobs_view_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8f35ce0853cbe2749c95d586d2c69a458e852a5931022626f03bcc021ab31a35)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_indices/indices_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-4f34d73edf0dd3ee9ae34be81bba138749fd9aebfacee306f9c9912bc18fb908)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/settings/settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-9abf25b8cd7b3311c09efcf537fe708f558eaad127f9ae56552c30ec38be3dbc)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/shared/api_logic/create_api_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b1431abb686615818a7e768d59bd8d3c00c143ff8e87501b40f06214c40b35cf)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/shared/flash_messages/flash_messages_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cd22dcfbb976160b2eb28d781fe64ca311f72e5904e8ac139498018302a5f1da)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/shared/http/http_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-bf7f398a500b979b731c2b1da940e0b5bf1cd7364aa918139d1a92474f77564d)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/shared/kibana/kibana_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-71787c22cb75097f06736441c4c2bfadd2b8081ce08c25b7053d9a785449b489)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/shared/licensing/licensing_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-f9f9a7485e95322395d0d062617ea55aa7eabb125ce79b1ddb09df7acc7b74e1)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/shared/tables/inline_editable_table/inline_editable_table_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-69d88e8fc383a1feef672934174d857f54ae8dba8caafab8891aeac3db08732f)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/shared/url_combo_box/url_combo_box_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e0672ab52a42dd7ef1c19a7065aa482fb2480d8ffc3dc0ede50685bbb4e23d42)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/app_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7d683e507c5a37393e10abec02e78038767132f1713de32909c329de9a7e7752)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/api_keys/api_keys_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1d201f70e2652f03ac4e07639dc8fcfcdda2f273fa1f042f81913533725bdd5e)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/add_source/add_custom_source/add_custom_source_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cce3cf43dc74255a871b9d0997af7d81f4ca4c9530e0fc6832cc7d75b907bbae)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/add_source/add_external_connector/external_connector_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ee7c158ad37746c929b42d54321e2a13260d1ff64ce72a84f29bea4300966095)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/add_source/add_source_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-60271cee3cf40f475f212f4c14e1581629fb74186e5cc0b5cc61e799a0fecd24)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/add_source/github_via_app_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ebc66e8f6a619feb731b82fbcec83ce75f01acdcf7e32341cf645e646df1440e)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/display_settings/display_settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3b256d71f9acb2e34dd1c8364117968218ff3da43d9c51b12851d1ba2f814b68)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/schema/schema_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-56458e080954c6ce153fa9de6107398ca7fb370e8483a236da8a8d20d2a02895)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/synchronization/synchronization_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1e3afdd7e36facb46861631967318967f4b23e8a1dad28ef21e1d7f8f107c428)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/source_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1ed94b9a614533248f07877178a4ba9603e5ab97815c1d607f1b626af91bb9a2)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/sources_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-10a9c1b0ad1b25a158844418286fc32ba3a6d87d221cfd1a1fcc96ee76cbd519)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/groups/group_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-fa49b84f3486800a7b48b5bf9587198979aa6c7e9bd60ce4d704f35da822d368)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/groups/groups_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a1ca9ba9edef5d8b857987c4d9efdab1d848903626690c0f9c9b626769856385)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/oauth_authorize/oauth_authorize_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-15b23ad5ad81a95fd6fb8ca75b57a0f53a232f59f50e1862fe693d4bca13847f)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/overview/gated_form_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-246706b91ff4301b4e24195af76fdc0b84fec96414789408038d7d04fc13ea58)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/overview/overview_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e4c385f600899d70e84568281952d82ff1eaafd88d11a1c2fece6242387d9324)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-2dff45e703ab1e1d65358bfc98811a3b440641b5c782919e6e51cfb15074ff6f)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/search_authorize/search_authorize_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cac68f64f0cea04a3ff54ffd14bc996baa7bc44b7665c8a39d9cf91fb53c2144)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/security/security_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b067f22de71e80a6cc9d6d1bb34db8f0772011130c8ac50bbacacc3572b7a45b)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/workplace_search/views/settings/settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-66ec90541af1c1d04c9bf500a858f403039f85c9c99a635288ad08def479a2cb)

@elastic/fleet
- [ ]
[x-pack/plugins/fleet/common/services/package_to_package_policy.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-89fb3d99874cf8558d4e11b8ea7c3fb0f681663ae0e958a319663884635f1556)
- [ ]
[x-pack/plugins/fleet/server/services/epm/archive/parse.ts](https://github.com/elastic/kibana/pull/186437/files#diff-232dc9fd708e4f1495f59c12729834fecd84bd8af70d4c21363da14e79aa30c1)

@elastic/kibana-gis
- [ ]
[x-pack/plugins/maps/public/classes/layers/vector_layer/blended_vector_layer/blended_vector_layer.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8a7def56c98651ea1f9876addb48421bca83b9158dd9acb70a52bf413fc398d0)
- [ ]
[x-pack/plugins/maps/public/classes/sources/es_geo_grid_source/es_geo_grid_source.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-69ccffa0f157cee961253b280ca40860bc2915a1fd772e15d23ceba6137cc414)

@elastic/stack-monitoring
- [ ]
[x-pack/plugins/monitoring/server/lib/calculate_auto.ts](https://github.com/elastic/kibana/pull/186437/files#diff-22169ee25bba1c0b7cf3c8c23e24e99d96097e44e3296bda33513290ec94665d)

@elastic/obs-ux-infra_services-team
- [ ]
[x-pack/plugins/observability_solution/apm/common/utils/flatten_object.ts](https://github.com/elastic/kibana/pull/186437/files#diff-54f4a14d914e1c4a73da2de122a1510a18d5515ad6494612b774ce74c2afc5b0)
- [ ]
[x-pack/plugins/observability_solution/apm/public/components/app/service_map/use_cytoscape_event_handlers.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d890cf784e20969087617da20bd51703ec00ae888ba8c5bf4aeefa7b2deaf702)
- [ ]
[x-pack/plugins/observability_solution/exploratory_view/public/components/shared/exploratory_view/configurations/lens_columns/overall_column.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b51184245cd445d7e0b85568910f22e346df3035298d0394f202089d7fe2c949)
- [ ]
[x-pack/plugins/observability_solution/infra/public/alerting/inventory/components/metric.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-aa69368d04202fb45b0d66c56653bdd106d29d7bdf6475400d9e12c7fe5959ea)
- [ ]
[x-pack/plugins/observability_solution/infra/public/alerting/log_threshold/components/expression_editor/criterion.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-fa742f7340759fa0d359a3bb4417f5d07794923b4b57a5f47f0905512966f1a1)
- [ ]
[x-pack/plugins/observability_solution/infra/public/alerting/log_threshold/components/expression_editor/threshold.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-5191c0e1e37ac03af1f6a4d36cda26915c76eacc892723d9bf82af4ac857fc66)
- [ ]
[x-pack/plugins/observability_solution/infra/server/lib/infra_ml/queries/metrics_host_anomalies.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7d05012bd4ade42b1b471607a01d641a435baa9c48125168570dd28c38e16399)
- [ ]
[x-pack/plugins/observability_solution/infra/server/lib/infra_ml/queries/metrics_k8s_anomalies.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8a437b5818061218847730f933aa481ece98a284c100d413ff7bfa3966e9ace0)
- [ ]
[x-pack/plugins/observability_solution/synthetics/server/synthetics_service/formatters/private_formatters/common_formatters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5e3452befed70ce7ba037850a269d7e130228bd570b94da61206c093edf24cbb)
- [ ]
[x-pack/plugins/observability_solution/synthetics/server/synthetics_service/formatters/public_formatters/browser.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6690c075d5b3f8a2d848b62473eb836441e582a17ea6f6f85c8e63bd3f59105d)
- [ ]
[x-pack/plugins/observability_solution/synthetics/server/synthetics_service/formatters/public_formatters/http.ts](https://github.com/elastic/kibana/pull/186437/files#diff-845abe4f787fee19b5f0656d434835080ed0d4a405e8fb3554aea1eced106112)
- [ ]
[x-pack/plugins/observability_solution/uptime/server/legacy_uptime/lib/requests/get_ping_histogram.ts](https://github.com/elastic/kibana/pull/186437/files#diff-fa004e86bd085c7f13fdb42972e221ecf0e1366af018fef20aa720a356ecfba5)

@elastic/obs-ai-assistant
- [ ]
[x-pack/plugins/observability_solution/observability_ai_assistant_app/public/rule_connector/ai_assistant_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-ea91d7daec5aa3f0c58d217308838b61c2ced3b7b61ec08bf4e65643c4d0f2ad)
- [ ]
[x-pack/plugins/observability_solution/observability_ai_assistant_app/public/utils/builders.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e69a9ff8cbd46cc3dfb0fd9d8fd166e0db4cb29baa8200cd2e6dc19b6cf48115)

@elastic/search-kibana
- [ ]
[x-pack/plugins/search_playground/public/components/view_query/view_query_action.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-b5e8d0638619def1c273d21336793e7c611fe1a43506ea89ea858a325b1d193f)

@elastic/kibana-security
- [x]
[x-pack/plugins/security/server/authentication/providers/anonymous.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5907942d0f69e399c09244c6b22a4454cb2de11686cfd924057ee455fd55abc4)
- [x]
[x-pack/plugins/security/server/lib/flatten_object.ts](https://github.com/elastic/kibana/pull/186437/files#diff-144d405c4cb888c816c967f663e02aed8b522a164c37f900ee3ea4fc496cc50a)

@elastic/security-solution
- [x]
[x-pack/plugins/security_solution/common/api/detection_engine/rule_management/import_rules/rule_to_import.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-9c85853d1dc8a73e5d8a3774b0da907fc41ffe1a6099b2d3a9884398070eaac4)
- [x]
[x-pack/plugins/security_solution/common/endpoint/generate_data.ts](https://github.com/elastic/kibana/pull/186437/files#diff-12dc63d6524a714b19d487bcf75486270eea7d5d52e6d1ecdeaa935545f33ac0)
- [x]
[x-pack/plugins/security_solution/public/common/components/guided_onboarding_tour/tour.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-4511e3f72ca02b041c93cb355572b860c3ea12663b6411a7b0bf90b25c2fa3e6)
- [x]
[x-pack/plugins/security_solution/public/common/components/matrix_histogram/index.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-832594ad881dbd3568c22065d852c8f286d84562c4a114a194a170f535e02b50)
- [x]
[x-pack/plugins/security_solution/public/common/components/ml/links/create_explorer_link.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-b6cc2f3a0f043136c6162c73e964fad5d7a7f26cba993f9cee22922790060cff)
- [x]
[x-pack/plugins/security_solution/public/entity_analytics/components/asset_criticality_file_uploader/reducer.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-dfcea3ca5c8b630b42ad6ecc88130a025698d3c9e4f2e7c6ef1c7f9c062e3bea)
- [x]
[x-pack/plugins/security_solution/public/explore/users/pages/details/breadcrumbs.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a803b4f0dbfb6f4bb8397333b6e0abe19c9274ec12850325dfe53c31630ba9a7)
- [x]
[x-pack/plugins/security_solution/public/management/services/exceptions_list/check_artifact_has_data.ts](https://github.com/elastic/kibana/pull/186437/files#diff-4611c7360f013788e308783c956e8fb60160d3ec92d55c6a5a2feff6202357d3)
- [x]
[x-pack/plugins/security_solution/scripts/run_cypress/parallel.ts](https://github.com/elastic/kibana/pull/186437/files#diff-9f40ced6d29c4fc2709af881680400293d8ce1bc9ebb07b9138d6d99c83c09c9)

@elastic/security-threat-hunting-investigations
- [x]
[x-pack/plugins/security_solution/common/utils/field_formatters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-245eb47c4e23306ad09acb7dc0d67773edf102c243ce16395562918ed3ffff19)
- [x]
[x-pack/plugins/timelines/common/utils/field_formatters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cdd49607e6de50d407a10b887f6bf2c930cadb11663d26649b56438f9727548c)
- [x]
[x-pack/plugins/security_solution/public/timelines/containers/index.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-c63c93153b6f7dcc62fd19575609db16b14c783d5562e901c6240de2ae19796a)
- [x]
[x-pack/plugins/security_solution/server/lib/timeline/utils/compare_timelines_status.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e5698692c8fee698a4ca6f44c140c5ef8b65ebed6d944fc4d6c60cb8ec72ab1e)

@elastic/obs-ux-management-team 
- [x]
[x-pack/test/alerting_api_integration/observability/helpers/alerting_wait_for_helpers.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3f2b755a964c21d5e0be45a480f691bbfeb07a0793488fbee2b56eeed544a06d)
- [x]
[x-pack/test/api_integration/apis/slos/helper/wait_for_index_state.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5e8ee3140d4987b39ac117159a26b200124e3ae64a7fff896abd96ec8cc113ae)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: nickofthyme <nicholas.partridge@elastic.co>
Co-authored-by: Mark Hopkin <mark.hopkin@elastic.co>
Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
Co-authored-by: Maxim Palenov <maxim.palenov@elastic.co>
Co-authored-by: Walter Rafelsberger <walter.rafelsberger@elastic.co>
Co-authored-by: adcoelho <antonio.coelho@elastic.co>
Co-authored-by: Kurt <kc13greiner@users.noreply.github.com>
Co-authored-by: Maryam Saeidi <maryam.saeidi@elastic.co>
Co-authored-by: Jan Monschke <jan.monschke@elastic.co>
2024-07-29 16:31:04 +01:00
Maxim Palenov
ecbe36de17
[Security Solution] Add missing Endpoint Exceptions API OpenAPI specifications (#186082)
**Resolves:** https://github.com/elastic/kibana/issues/183839

## Summary

This PR adds missing OpenAPI specifications for Endpoint exceptions API which are the following

- `POST /api/endpoint_list`
- `POST /api/endpoint_list/items`
- `GET /api/endpoint_list/items`
- `PUT /api/endpoint_list/items`
- `DELETE /api/endpoint_list/items`
- `GET /api/endpoint_list/items/_find`
2024-07-29 16:19:12 +02:00
Maxim Palenov
4d7c36cee9
[Security Solution] Add missing Exceptions API OpenAPI specifications (#185951)
**Resolves:** https://github.com/elastic/kibana/issues/183837

## Summary

This PR adds missing OpenAPI specifications for Exceptions API which are the following

- `POST /api/exception_lists/_export`
- `POST /api/exception_lists/_import`
- `POST /api/exception_lists`
- `GET /api/exception_lists`
- `PUT /api/exception_lists`
- `DELETE /api/exception_lists`
- `GET /api/exception_lists/_find`
- `POST /api/exception_lists/_duplicate`
- `POST /api/exception_lists/items`
- `GET /api/exception_lists/items`
- `PUT /api/exception_lists/items`
- `DELETE /api/exception_lists/items`
- `GET /api/exception_lists/items/_find`
- `GET /api/exception_lists/summary`
- `POST /api/exceptions/shared` 
- `POST /api/detection_engine/rules/{id}/exceptions`
2024-07-15 13:12:56 +02:00
Tim Sullivan
9cc4c41d05
[Lists Plugin] Migrate authc.getCurrentUser usage to coreContext.secu… (#187179)
Part of https://github.com/elastic/kibana/issues/186574

## Summary

This PR migrates the Lists Plugin's `ListsRequestHandlerContext`, which
consumes `authc.getCurrentUser`, to use `coreStart.security`.

Background: This PR serves as an example of a plugin migrating away from
depending on the Security plugin, which is a high priority effort for
the last release before 9.0.

### Checklist

Delete any items that are not applicable to this PR.

- [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

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2024-07-02 08:33:12 -07:00
Pierre Gayvallet
1dee2872f3
Bump @elastic/elasticsearch to 8.14.0 (reloaded) (#186848)
## Summary

Reopening https://github.com/elastic/kibana/pull/186326 with my account,
non-internal PRs are just terrible to work with

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Tiago Costa <tiago.costa@elastic.co>
Co-authored-by: Aleh Zasypkin <aleh.zasypkin@elastic.co>
2024-06-26 08:29:15 -07:00
Maxim Palenov
7a0065d5b6
[Security Solution] Add missing Lists API OpenAPI specifications (#185865)
**Resolves:** https://github.com/elastic/kibana/issues/183821

## Summary

This PR adds missing OpenAPI specifications for Lists API which are the following

- `POST /api/lists`
- `GET /api/lists`
- `PUT /api/lists`
- `DELETE /api/lists`
- `PATCH /api/lists`
- `GET /api/lists/_find`
- `GET /api/lists/privileges`
- `POST /api/lists/items`
- `GET /api/lists/items`
- `PUT /api/lists/items`
- `DELETE /api/lists/items`
- `PATCH /api/lists/items`
- `POST /api/lists/items/_export`
- `POST /api/lists/items/_import`
- `GET /api/lists/items/_find`
- `POST /api/lists/index`
- `GET /api/lists/index`
- `DELETE /api/lists/index`

**Note:** Code generation is enabled for the added specs to verify that it works and produces expected results. Generated Zod schemas and types aren't integrated in the route's code.
2024-06-18 13:22:19 -07:00
Candace Park
e767ef47d3
[Security Solution][Endpoint Exceptions] Wildcard warning with IS operator for endpoint exceptions creation/editing (#182903)
## Summary

- [x] Adds a warning message under the value, a callout and a
confirmation warning modal to endpoint exceptions if an entry contains
the "IS" operator with a wildcard value
- [x] Unit Tests

# Screenshots

![image](d28b093f-77a1-4266-865f-657826879d0c)

![image](70646034-73eb-4f7b-a84b-afaf4d32561c)

---------

Co-authored-by: Vitalii Dmyterko <92328789+vitaliidm@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2024-06-11 15:03:02 -07:00
Alejandro Fernández Haro
593d391172
Add @typescript-eslint/no-floating-promises (#181456)
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Aleh Zasypkin <aleh.zasypkin@elastic.co>
Co-authored-by: Patrick Mueller <patrick.mueller@elastic.co>
2024-05-01 08:41:31 -07:00
Patryk Kopyciński
0780c19322
Add explicit children types (#181257)
## Summary

Prep work for React@18 bump

tl;dr In React@18 `React.FC` doesn't contain `children` anymore, so in
order to make the bump easier I have decided to split the effort in
multiple faces and hopefully this will make it easier for everyone

This PR focuses only on adding explicit `children` declaration either by
using `React.PropsWithChildren` type or by adding `children:
React.ReactNode` to the existing props types

https://github.com/DefinitelyTyped/DefinitelyTyped/issues/46691

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Sergi Massaneda <sergi.massaneda@gmail.com>
Co-authored-by: Marco Vettorello <marco.vettorello@elastic.co>
Co-authored-by: James Gowdy <jgowdy@elastic.co>
2024-04-29 16:56:41 +01:00
Candace Park
47c7174bff
[Security Solution][Admin][Event Filters] Wildcard warning with IS operator for event filters creation/editing (#178440)
## Summary

- [x] Adds updated warning messaging for trusted apps entries that use
wildcards `*?` with the "IS" operator
- [x] Three different warnings: callout, individual entry item warnings
and a final confirmation modal when the user tries to add an event
filter with ineffective IS / wildcard combination entry.
- [x] Unit tests
- [x] Fixes bug in endpoint exceptions where there is a missing tooltip
icon for the wildcard performance warning

# Screenshots

![image](fd960261-66cc-44f2-b437-bbd9bd3809ab)

![image](da580273-740c-49db-bef9-d79fe0f0ca35)

Bug Fix

![image](8ebbfd83-4286-4ac1-a858-0d390fbfd4b6)
2024-04-16 09:59:02 -07:00
Khristinin Nikita
35dc121c95
Value lists modal window (#179339)
##  Value List Items Modal Window

Experimental flag: **valueListItemsModal**

it's temporarily true and will be set to false, before merge


2aafe007-734f-4c0e-b542-5eca229e310d

Added a new modal window that lets users interact with value lists
directly. This modal supports viewing, searching, adding, deleting,
updating, and uploading items.

Where to find the modal window:
- Value list popup
- Exception editing and viewing on both the rule page and shared
exceptions management page
Permissions:

Add, edit, delete, and upload buttons are hidden for read-only users.
The modal link is not shown to users without read permissions.


### Changes to API
I added optional **refresh** flag for list items API, because we want to
see the changes in UI, when editing list items

### How to review

All new components is here -
`x-pack/plugins/security_solution/public/value_list/`
New hooks - `packages/kbn-securitysolution-list-hooks/`
API calls - `packages/kbn-securitysolution-list-api`
Actual API - `x-pack/plugins/lists/server/routes`

There also some props drilling into exceptions package, which is not
ideal, please let me know if you have better ideas

[test plan](https://github.com/elastic/security-team/pull/9128)

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2024-04-15 19:45:52 +02:00
Paul Tavares
c8d16b958f
[Lists] Remove capture of Stack trace when registering server-side extension points (#179577)
## Summary

- Removes the capture of `Error.stack` when registering new Lists
server-side extension points. Calls to `Error.stack` are costly and was
contributing to kibana Plugin start up time
- Fixes #179405


### 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
2024-04-01 10:37:38 -04:00
Georgii Gorbachev
f96818a0cb
[Security Solution] Remove @ts-expect-error from v4.9.5 upgrade in Detection and Response areas (#179273)
**Resolves: https://github.com/elastic/kibana/issues/176287**
**Resolves: https://github.com/elastic/kibana/issues/176126**

## Summary

In https://github.com/elastic/kibana/pull/175178 Kibana was upgraded to
TypeScript v4.9.5. That PR introduced a few type errors which were
skipped by adding `@ts-expect-error` comments. This PR attempts to fix
those type errors and remove the comments.
2024-03-27 05:01:53 -07:00
Marshall Main
da70c4495b
[Security Solution] Remove privileges that are not available in serverless from read privileges route (#178580)
## Summary

Serverless environments do not have as many privileges available as ESS.
As such, the hasPrivileges API on serverless rejects requests that
include privileges that exist on ESS but not serverless. We request a
large number of privileges in our hasPrivileges request, but many of the
results are never actually used.

This PR removes the ESS-only privileges from our hasPrivileges call so
it will work without errors in both ESS and serverless. None of the
removed privileges are necessary for either environment.

## Related Info

https://docs.google.com/document/d/1IAPLqldS0xEZ_JHHE_Si5VA7xHnXpRAxkH_5FFTrtIo/edit#heading=h.pjo9lsbolpjv
2024-03-14 10:29:45 -07:00
Alexey Antonov
b63c9e2824
fix: [Rules > Add/Edit rule exception][AXE-CORE]: Form elements must have an accessible label (#177923)
Closes: https://github.com/elastic/security-team/issues/8572
Closes: https://github.com/elastic/security-team/issues/8573
Closes: https://github.com/elastic/security-team/issues/8613
Closes: https://github.com/elastic/security-team/issues/8614

## Description

The [axe browser plugin](https://deque.com/axe) is reporting two form
elements without labels in the Create endpoint exception flyout.
Screenshot attached below.

### Steps to recreate

1. Open [Shared Exception
Lists](https://kibana.siem.estc.dev/app/security/exceptions)
2. Click the Create Endpoint Exception button
3. Run an axe browser scan in Chrome, Edge, or Firefox
4. Verify the form label missing errors

### Screens 

#### a11y attributes

<img width="1419" alt="image"
src="61ef3ea1-bd65-46e0-9274-ae9aa329a04d">


#### Axe report

<img width="1419" alt="image"
src="df5ba30c-78f5-4418-b3b6-09a028e1c606">

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Vitalii Dmyterko <92328789+vitaliidm@users.noreply.github.com>
2024-03-06 06:57:42 -07:00
Tiago Costa
86a74a7fea
skip flaky suite (#178026) 2024-03-05 18:36:41 +00:00
Vitalii Dmyterko
3bb38a5718
[Security Solution][Detection Engine] fixes list index requests behaviour (#177416)
## Summary

- while working on https://github.com/elastic/security-team/issues/8589,
discovered list index requests fired when navigating between pages, even
though state of list index is unlikely to change
- fixes case when admin user opens Security for the first time, goes to
multiple pages and can see 409 error of multiple index create requests
- to avoid multiple index requests when user navigates to different
pages, I introduced react-query hooks with `Infinity` mins stale time,
which means, query result would be cached for entire user's session
before page reload or user logout/login.
Downside of this approach, if user does delete list index through API,
they would need to refresh browser page to update index status. But
delete index API is not event documented and its usage would affect
different aspect of the app.
Alternative, might be, to refresh index status when user opens lists
flyout. But given unlike scenario of user using undocumented delete
index API, I think we can skip this refresh call on every flyout open


### Before
#### Multiple lists/index requests


8c82a270-4578-4a98-9be9-1ca3d7b00d17


#### Multiple create index requests and 409 error


a7a1718c-5bb2-4427-9819-f72e98b55a9c


### After

#### Single lists/index request



d5060a31-469c-4fc3-bc40-b6e4d3e65a48

#### No multiple create index requests



3c5cb04f-8b26-47c0-ab79-2fe1c41671dd

---------

Co-authored-by: Ryland Herrick <ryalnd@gmail.com>
2024-03-05 14:10:58 +00:00
Tiago Costa
250790e0f1
chore(NA): upgrade typescript into v4.9.5 (#175178)
This PR bumps the Typescript version used on Kibana into v4.9.5. The
full set of changes can be found
[here](https://devblogs.microsoft.com/typescript/announcing-typescript-4-9/).
So far, as long I can see, the performance is better than in the version
we're currently in.

I didn't want to make assumptions for such a diversity of type errors
across the codebase so instead I choose to mark the failures with
`@ts-expect-error` and let each team decide how to handle it.

There is a list below with the files (and teams those belong to) where
the annotations were added. If each team could provide help of fixing
the ones under their domain it would be fantastic. It can be done in
this PR or in subsequent ones.

Here it goes the list for follow up:

@elastic/kibana-core - tracking issue:
https://github.com/elastic/kibana/issues/176153
- [ ]
[packages/analytics/client/src/analytics_client/analytics_client.ts](https://github.com/elastic/kibana/pull/175178/files#diff-57477fa4b8c2fcd5a3159e8a6a9a1db80199dbe94b2917a520d4dcee4f65599b)
- [ ]
[packages/analytics/client/src/analytics_client/context_service.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b7802a3b9a46305607ff678abde499d9c9e1dd8b1f3f6a76add1a8c3a0b94e43)
- [ ]
[packages/analytics/client/src/analytics_client/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-6584fc2ecf29864805de0f0f82dcff81a850b53aeff25932a598c9157c991d43)
- [ ]
[packages/core/http/core-http-router-server-internal/src/validator.ts](https://github.com/elastic/kibana/pull/175178/files#diff-5a4d386d142b33439aa7c638b7ddc2300da40155c636b4cf3119929b8bb57b72)
- [ ]
[packages/core/http/core-http-server-internal/src/cookie_session_storage.ts](https://github.com/elastic/kibana/pull/175178/files#diff-9efcaa58a5bdbfcac57c68b9c2e108b921c9c5ea88abf90920191b150d56a03a)
- [ ]
[packages/core/plugins/core-plugins-server-internal/src/create_browser_config.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b49a02fac82b32dd34c271d0ed71f7f79f173591e6810b32093975bd50fe11b1)
- [ ]
[packages/core/saved-objects/core-saved-objects-api-server-internal/src/lib/apis/bulk_update.ts](https://github.com/elastic/kibana/pull/175178/files#diff-9a151f7dc25effb6f2bb084075b7d1d8e8ee049dcd91e92a0d27e014d3bc82b8)
- [ ]
[packages/core/saved-objects/core-saved-objects-api-server-internal/src/lib/apis/update.ts](https://github.com/elastic/kibana/pull/175178/files#diff-d5a4ebda74b0c2e2ca625fe395a185e3ff0076bc44614cf640cf33cbc5cba2bd)
- [ ]
[packages/kbn-es-types/src/search.ts](https://github.com/elastic/kibana/pull/175178/files#diff-49222c37a13c4c85c287947aaa8293029513f4a34933fcac6116ad3059ee8fcf)
- [ ]
[packages/kbn-utility-types/src/dot.ts](https://github.com/elastic/kibana/pull/175178/files#diff-f14998302c20ca97ac7f3faa7b542f22670708eac134e6af96c354489a641689)
- [ ]
[src/core/server/mocks.ts](https://github.com/elastic/kibana/pull/175178/files#diff-a3e30603bf537517842354df3548e88a25f4d9e2a6be08f95b88fb8db48e4228)
- [ ]
[test/plugin_functional/test_suites/core_plugins/rendering.ts](https://github.com/elastic/kibana/pull/175178/files#diff-eb6bd8a02c024aa1ab5c3debbeda149e8d2fb2614bca80d09c3f9aa21100ed7d)

@elastic/kibana-presentation 
- [ ]
[packages/content-management/content_editor/src/__jest__/tests.helpers.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-6e56e39c2e9accef38070408bb589fb4cc973e4353098574be142aa8e3da399e)
- [ ]
[src/plugins/embeddable/public/lib/embeddables/embeddable_factory.ts](https://github.com/elastic/kibana/pull/175178/files#diff-1aa4b1f585b7a75d996ad7620d8cfef03584e41f77d529172acc5250f5de092f)
- [ ]
[src/plugins/presentation_util/public/services/create/provider.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-baa5fb3d72bf64b6c269155b736f6af387688b0f2f77d804f5fd5ced69d3e2c9)
- [ ]
[x-pack/plugins/canvas/canvas_plugin_src/functions/server/pointseries/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-da216f23664ac188404e9a48cdf33b05ad121512d988da5cd88a72724d5bfff9)
- [ ]
[x-pack/plugins/canvas/server/templates/status_report.ts](https://github.com/elastic/kibana/pull/175178/files#diff-45598e8b99710f8fd7a0a00eb7b0810cb24bf529b7fefb52dfd5f05b82a23578)
- [ ]
[x-pack/plugins/canvas/server/templates/summary_report.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b1eb9cec629f0adcae86dede388d6b343b785970a458fbf57c96dbd32b3fc8b5)
- [ ]
[x-pack/plugins/canvas/types/arguments.ts](https://github.com/elastic/kibana/pull/175178/files#diff-c7d1e4fa5026000bb99d03e5dace364226857c8e1e928a182c14c3f33f0006d9)
- [ ]
[x-pack/plugins/canvas/types/functions.ts](https://github.com/elastic/kibana/pull/175178/files#diff-00548b1936e05f24bc8dcbf453bf5a49f0f129989bab422926d3f4b56e35abae)

@elastic/apm 
- [ ]
[packages/kbn-apm-synthtrace-client/src/lib/interval.ts](https://github.com/elastic/kibana/pull/175178/files#diff-ec08c88331cc24811a3e24cec3aa99d02a707fb1a5848e1fb3a7c3172f99f1e7)
- [ ]
[packages/kbn-apm-synthtrace/src/lib/shared/get_serialize_transform.ts](https://github.com/elastic/kibana/pull/175178/files#diff-98d45df58fce30ac60a87c3a88aa7368ecf16f5b79b68a67419d8546974e42db)
- [ ]
[packages/kbn-apm-synthtrace/src/lib/utils/with_client.ts](https://github.com/elastic/kibana/pull/175178/files#diff-612d609963c9fe7830bc4e522bd3bb614369772906708b163e9854ec85cf879c)
- [ ]
[x-pack/plugins/apm/server/lib/helpers/transactions/get_is_using_transaction_events.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-69ee25aee396b7ccb9cc749b4f9cfad19a380bf3c4eb1f2d1848390b75477732)

@elastic/obs-knowledge-team  
- [ ]
[packages/kbn-io-ts-utils/src/to_json_schema/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-012b20f075e09f40a1839b759082ffea0122aeb79d6b5fd5e642f9abee2435e2)
- [ ]
[packages/kbn-server-route-repository/src/test_types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-a4e28211d0c856831b71488f849f1c9e542373d4a287baa3cbfa032278cc8dc0)

@elastic/security-detection-engine   
- [ ]
[packages/kbn-securitysolution-io-ts-alerting-types/src/threat_mapping/index.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-594114826caa3dee11e8dda5d6a67d4ce852b02f5d4df9721925c19d9c5d97af)
- [ ]
[packages/kbn-securitysolution-utils/src/add_remove_id_to_item/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8a1645d3d66eedeb05f8d954a3855523f8403b7a9c59200ad8184af96bb28cfb)
- [ ]
[x-pack/plugins/lists/server/routes/utils/build_siem_response.ts](https://github.com/elastic/kibana/pull/175178/files#diff-170882f010e12304aec81e167487cfc086c2d6a1d7dbbb36d1db2215d072577e)

@elastic/appex-sharedux 
- [ ]
[packages/shared-ux/router/impl/routes.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-43ba27115faf87c05460364c3b30b32f2794451404c82470653ccd9258e944b8)
- [ ]
[src/plugins/files/server/routes/file_kind/enhance_router.ts](https://github.com/elastic/kibana/pull/175178/files#diff-33258e2bd2f400b53a1366511ec3ef1c83b8f0aee762c1bd83abdea3ff153c2a)
- [ ]
[src/plugins/files/server/routes/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-bad66d1fdd59cf33bfa9a20aa96dde580fab1b7da8252723ee08c4e99203074f)

@elastic/kibana-visualizations 
- [x]
[src/plugins/chart_expressions/expression_legacy_metric/public/__stories__/metric_renderer.stories.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-e66ed20c106e40aee23cbca1980280ef6600797f5d2210486be007d7fe5d72ca)
- [x]
[src/plugins/chart_expressions/expression_legacy_metric/public/components/with_auto_scale.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-d45fb549abb422cdd706da86c52a3d9dc3b0517f028b966b20cf2679aabcd24f)
- [x]
[src/plugins/expressions/common/execution/execution_contract.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8817ec58899f80b4bfd6144dc59c3e6dc9a508e31264cd2bdf155a0b1746d9f9)
- [x]
[src/plugins/vis_types/table/public/components/table_vis_basic.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-4de9a68e38b105b862755f59d2d05722bfba6ffc85dcb0b2cf5eaf754a6afb50)
- [x]
[src/plugins/vis_types/timeseries/public/convert_to_lens/lib/convert/percentile.ts](https://github.com/elastic/kibana/pull/175178/files#diff-c5fef6976b67ee678ec2dda15e0bd3ca56bef8404565499b915783a40c3c908d)
- [x]
[src/plugins/vis_types/timeseries/public/convert_to_lens/lib/convert/percentile_rank.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8ad6988492e0ada34f9899f56f40533e41e537d6d79af1cc3794fdb68fbff358)
- [x]
[src/plugins/visualizations/public/vis.ts](https://github.com/elastic/kibana/pull/175178/files#diff-15c314cac8f334b9e9feb83d9f23c0c9e94f4c85405cfa4b4e3b3b445bd6763e)
- [x]
[src/plugins/visualizations/public/vis_async.ts](https://github.com/elastic/kibana/pull/175178/files#diff-d5e129fbb0217fe4da38f828794cd141bc6a4d32d87847713920312a5d27f150)
- [ ]
[x-pack/plugins/lens/public/datasources/form_based/operations/definitions/formula/formula.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-5624778a752c98be20953fd297e58165dab354ddab95bcf0c6b2a91d854a9c71)
- [x]
[x-pack/plugins/lens/public/debounced_component/debounced_component.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-9c14c9f29c5b351993b25d462b1d988e354068a1db9a8651515c3ee85fbd6ce9)
- [ ]
[x-pack/plugins/lens/public/editor_frame_service/editor_frame/workspace_panel/workspace_panel.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-8ca1f3be4f6696d9c05773cfaa23d7489a1c460fffdf39c8ad2ba8aa09f6c194)
- [ ]
[x-pack/plugins/lens/public/embeddable/expression_wrapper.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-d3a5ba0620f3712afd6af94b1f4ceea107d356c6812ae245d1b496caf86c54a7)
- [x]
[x-pack/plugins/lens/public/state_management/lens_slice.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8b56f34b3034981765e12503ccd32ca15b2d889ab6acd594737ae5313a5e2312)
- [x]
[x-pack/plugins/lens/server/migrations/common_migrations.ts](https://github.com/elastic/kibana/pull/175178/files#diff-7609127370894696659846e16e36353fda9cc11150c663334236caf597854b24)
- [ ]
[src/plugins/embeddable/public/registry/saved_object_to_panel_methods.ts](bcd925ecb6 (diff-1401b355377c76ab6458756aa0e3177beef5ec56796c58b7a52b5e003f85b5cf))

@elastic/kibana-data-discovery 
- [ ]
[src/plugins/data_view_management/public/components/test_utils.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-60386b173801a1e7fa97b99de49501c4fe7053c099ee06107292461acc7d26a8)
- [ ]
[src/plugins/unified_histogram/public/layout/layout.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-03181d67508c4c66d682a019b9b1e9235ca8a6dc656450e563422c9720bfa24f)

@elastic/platform-deployment-management 
- [ ]
[src/plugins/es_ui_shared/static/forms/hook_form_lib/components/use_field.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-ef2d4424a31a8d8def4c1c2d9d756cfef9cc58b30837c1b6639e3419e572cdd9)
- [ ]
[src/plugins/es_ui_shared/static/forms/hook_form_lib/hooks/use_field.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b80eb528652fd57fe88cae03deed4737cba5992b3a9ddf62259e4aa892b2ec68)
- [ ]
[src/plugins/es_ui_shared/static/forms/hook_form_lib/hooks/use_field_from_props.ts](https://github.com/elastic/kibana/pull/175178/files#diff-ac8d10db6808671a05edbe0e9f4cecf330377cf85aaef8d96019e8e1dc7987ef)
- [ ]
[src/plugins/es_ui_shared/static/forms/hook_form_lib/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-3e75c35c5d016b55290a30604c278eaf90bbd5a78a26613dbed19f0abd59212f)

@elastic/kibana-security 
- [x]
[src/plugins/interactive_setup/public/use_form.ts](https://github.com/elastic/kibana/pull/175178/files#diff-afe9ad58c9ccaf628d72ed916620587703bd960ba313e3199fbef4c98ad30841)

@elastic/ml-ui 
- [ ]
[x-pack/packages/ml/cancellable_search/src/use_cancellable_search.ts](https://github.com/elastic/kibana/pull/175178/files#diff-4a366c647aadac020022b1186fa424fa6475b2ba907d9391cfff5e77863dec48)
- [ ]
[x-pack/packages/ml/date_picker/src/components/full_time_range_selector.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-b5dd4c2d53eedbc4d749261001ab2f735f798ec6cbf249c900db517294a4ec59)
- [ ]
[x-pack/plugins/aiops/public/hooks/use_cancellable_search.ts](https://github.com/elastic/kibana/pull/175178/files#diff-361b7df5c49f9b67a897baab531df2456ceba3b57eaee9b2bb193b4d70aed052)
- [ ]
[x-pack/plugins/data_visualizer/public/application/data_drift/use_data_drift_result.ts](https://github.com/elastic/kibana/pull/175178/files#diff-0c1ebe9287033ed3afdbe615c8e95f6091285de5df1455134d9f6d14d3e9b970)

@elastic/response-ops 
- [ ]
[x-pack/plugins/alerting/server/application/rule/methods/create/create_rule.ts](https://github.com/elastic/kibana/pull/175178/files#diff-a4ecdf971673064aa6dc4ab5620e7b128efcc27b3e77804a3753d2839eaa7ba2)
- [ ]
[x-pack/plugins/alerting/server/application/rule/methods/resolve/types/resolved_rule.ts](https://github.com/elastic/kibana/pull/175178/files#diff-fd0549bd17f14e41a3c47a0dfe01a3cbd76f141983aa076ce30537db4edb0f0c)
- [ ]
[x-pack/plugins/alerting/server/routes/get_rule.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-5c8d8530f6a5ebb71ff59f03cb212af6ca2cffe015ee061cd998d11b63f5fd2d)
- [ ]
[x-pack/plugins/alerting/server/routes/lib/rewrite_rule.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-032345b22421e404941669203a41b51b23a5223a555ef286ab29ff1ea199a287)
- [ ]
[x-pack/plugins/alerting/server/routes/rule/apis/create/create_rule_route.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-425f9213402823ce800f9f4400ccce476c1b15d82302f238b3e07312bcacf1fe)
- [ ]
[x-pack/plugins/cases/public/api/utils.ts](https://github.com/elastic/kibana/pull/175178/files#diff-3b36a4b3a6bcd19c1ee4aa7f83fb50e08ae3715c936c26ca911df9e8da319d63)
- [ ]
[x-pack/plugins/cases/public/components/case_view/components/user_list.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-1ce6d0fd74881ed9a9dd9bbe7ec597083382aee3395fb032c46ec7acd8a201f5)
- [ ]
[x-pack/plugins/stack_connectors/public/connector_types/opsgenie/params.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-e08360892ade8eba65f8e6097525cb749918b8beb9d949d3f9e3a79dfcb9df97)
- [ ]
[x-pack/plugins/triggers_actions_ui/public/application/lib/suspended_component_with_props.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-2f91d7445dd017643fe50c068a42d4c143ca0208aac42ad35d10401aaf6480c6)
- [ ]
[x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_alerts_filter_timeframe.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-37c30c5d49eaaaeef4e05d01d4e6e73584684ab9707d731c7945aca56cde6091)
- [ ]
[x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_conditions.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-51a33d1d3b082b2615edd649b7ebc3bdb00e9c107cee754e468fa9512d064835)
- [ ]
[x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_conditions_group.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-24314823291cc4b2970c60f3c66c9e1c2d49aa88b668a063dd1d44724cde7080)

@elastic/security-threat-hunting-investigations
- [ ]
[x-pack/plugins/ecs_data_quality_dashboard/server/lib/build_response/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8aefd6c90e985c7a1c8715b4c894be71e3d8abcb58fad0c513b4ab37e23cffbb)

@elastic/security-generative-ai
- [ ]
[x-pack/plugins/elastic_assistant/server/lib/build_response/index.ts](https://github.com/elastic/kibana/pull/175178/files#diff-0e0fa80b96f36b0daa287213f9f35da73adfd869d33b16a4f44ab1a336f66925)

@elastic/enterprise-search-frontend
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector_total_stats.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-61c41618bb97778cb1fd7d0645ddc07e779f1b1c63a0e7684b0a6df664de0c91)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler_total_stats.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-d8651696438142564028406ccab850b316a3fb3b6d5f38ca7e4e6804f6491d1b)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/search_index/pipelines/pipelines_json_configurations_logic.ts](https://github.com/elastic/kibana/pull/175178/files#diff-d77f51637904e4d4672b6b2d7f7ced6df73af142e8ba3fb5a074c700b5cf0fd0)
- [ ]
[x-pack/plugins/enterprise_search/public/applications/shared/accordion_list/accordion_list.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-f19e11825ff7d643f74a9f95cda32843685c28f0a7e7fc8b6d9f05dc659e0ee7)

@elastic/fleet 
- [ ]
[x-pack/plugins/fleet/.storybook/context/fixtures/integration.nginx.ts](https://github.com/elastic/kibana/pull/175178/files#diff-0d84f41c1e7da6af3d1dc869fa722c384247beddf2a58de6c00bdedd3a835ed1)
- [ ]
[x-pack/plugins/fleet/common/authz.test.ts](https://github.com/elastic/kibana/pull/175178/files#diff-25b3fe4e87a154100ec03010e9c5f08a00790104352757922f03caf2c24536f8)
- [ ]
[x-pack/plugins/fleet/public/applications/fleet/sections/settings/hooks/use_confirm_modal.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-ea640c827015978c83ae51a221392f57124a6fccb90c977991133baa020f6487)
- [ ]
[x-pack/plugins/fleet/server/services/preconfiguration.ts](https://github.com/elastic/kibana/pull/175178/files#diff-82d451a43233c196f1c527436ec5b4afe16c669d25f912086ef83939fe04fbda)

@elastic/platform-deployment-management
- [ ]
[x-pack/plugins/index_lifecycle_management/public/application/sections/edit_policy/form/form_errors_context.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-6fdd461892c891ebad0ba30154ecf28479dd10c63b756eb57e658a02cb62ae63)

@elastic/obs-ux-logs-team / @elastic/obs-ux-infra_services-team

- [ ]
[x-pack/plugins/infra/public/containers/metrics_source/source.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-f27b71c245d27489c408611dfd2d2c020e4e881b6db7dcaf0b2f0cf8401ce5a1)
- [ ]
[x-pack/plugins/infra/public/pages/metrics/metric_detail/components/section.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-d782e8608b4b6ec1e5de15432ee899be94dfbdbedddc8d94b09c3399e2754294)
- [ ]
[x-pack/plugins/infra/public/pages/metrics/metric_detail/components/sub_section.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-eb598de689a9aa6536795e7f63a7c59a771c2c4e0a0bb81ee0102c8ce864620d)
- [ ]
[x-pack/plugins/logs_shared/public/components/logging/log_text_stream/vertical_scroll_panel.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-68bd0b43320ea3e59359e977d70f1c2e33518c1de5d97f39df17cb0a6a71cb99)
- [x]
[x-pack/plugins/observability_solution/logs_explorer/public/utils/proxies.ts](https://github.com/elastic/kibana/pull/175178/files#diff-134c464cedf12a2a2e1bceb1014d63e9ac7df4fd263ee5fe4ddd13fe3af7382d)
- [x]
[x-pack/plugins/synthetics/public/apps/synthetics/components/monitor_add_edit/form/validation.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-cf41bdb5d7247755b3b5dff0f428d847c9aa2f1ecff14c4e8fbfec5048e3ff91)
- [x]
[x-pack/plugins/synthetics/public/apps/synthetics/state/service_locations/api.ts](https://github.com/elastic/kibana/pull/175178/files#diff-571225171a2250a7b66cdc308eea2308cccdfc5ddf69c454dffd59d890947fe3)
- [x]
[x-pack/plugins/synthetics/public/utils/api_service/api_service.ts](https://github.com/elastic/kibana/pull/175178/files#diff-04d770eab9404afbf543d52e1ca2e869e0248f86ca2943d8811ca95a6a37f331)
- [x]
[x-pack/plugins/synthetics/server/routes/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-ddd7e79b79cf790fbd1798174b6f6a25cd869d1afd4ecf53f1a3febaa980f618)
- [x]
[x-pack/plugins/synthetics/server/synthetics_service/service_api_client.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b22608feca8f7a00a94d538f7a51c1be3bbd355d9966e5a1e4b4b2e84c663342)
- [x]
[x-pack/plugins/uptime/public/legacy_uptime/components/common/monitor_tags.test.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-840db8c32fd91ca5075b60203426a93bff6a3e522f7d65f0a9c5b02733071cf4)
- [x]
[x-pack/plugins/uptime/public/legacy_uptime/state/api/utils.ts](https://github.com/elastic/kibana/pull/175178/files#diff-576a5e3c17bfaeaaf8f1c3df1cfc7f84021bf7ee234e7df77c38cd0afd90d573)
- [x]
[x-pack/plugins/uptime/public/utils/api_service/api_service.ts](https://github.com/elastic/kibana/pull/175178/files#diff-85df170f1ea77dc9faa8aaec88929babd7bd24ee78845ea5bb8e9ed43c19e051)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/lib/requests/get_snapshot_counts.ts](https://github.com/elastic/kibana/pull/175178/files#diff-f80f1cca2be5a43785f840c2705b59732e4eb8b57f8879806600b3220e9bb234)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/lib/requests/search/find_potential_matches.ts](https://github.com/elastic/kibana/pull/175178/files#diff-80c8152e4da9f7d2fa42cd5dcf35a34c70cd86b32da08d0710620272ac4e9f62)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/lib/requests/search/query_context.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8692f1eec652074b463e4b8478116ba796ce5cd0bcc818755300b36e80baeb95)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/lib/requests/search/refine_potential_matches.ts](https://github.com/elastic/kibana/pull/175178/files#diff-7b93319a7e63eb6e09cbb3147b49f40ef794f684be024d62f094c72cfdb2693c)
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/routes/types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-5618c2b61f704802d87c620000f5500f2340605fbe8abe5a261864e83ed9eded)
- [x]
[x-pack/plugins/ux/public/application/ux_app.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-0bd45972562be4fcdad56b6fe2c2c9800775689067b0c2a956733e5c334b43c9)
- [x]
[x-pack/plugins/ux/public/components/app/rum_dashboard/ux_overview_fetchers.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8bfd9c637261e22d413a95546cb9dd54efcd41930646fbdf8081965f81b4dcf3)

@elastic/kibana-gis 
- [ ]
[x-pack/plugins/maps/public/classes/sources/es_source/es_source.ts](https://github.com/elastic/kibana/pull/175178/files#diff-23b9c9add47e2d51d022faf8e8527b46febf5d265fdddfb383bbc86b58257691)
- [ ]
[x-pack/plugins/maps/public/classes/styles/vector/properties/dynamic_style_property.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-b981aee9ac5aa5b1eb7f811eae5a461f15835f2d81d693b40a402fd55a8b9f59)
- [ ]
[x-pack/plugins/maps/public/classes/styles/vector/symbol_utils.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-94970fa194c5e647c78a36fe6c8894365780f320f77db6065572bec88ac5586b)
- [ ]
[x-pack/plugins/maps/public/lazy_wrapper.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-27e988b8e71057b5c527ff008ca6c92a545bbe29ddeb9ea2a461aeb5bdb498ae)

@elastic/observability-ui 
- [ ]
[x-pack/plugins/observability_shared/public/contexts/inspector/inspector_context.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-cd6617fddf50f9a5e29d8674a54dbd8d65e298f31fec6c2a9635bd39681b6910)

@elastic/security-defend-workflows
- [ ]
[x-pack/plugins/osquery/common/utility_types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-e1aaf9c0e4f18af25b940e2b0aa55fb274022fa5fd2e378276c88da6b0e7c392)

@elastic/security-solution
- [ ]
[x-pack/plugins/security_solution/common/endpoint/generate_data.ts](https://github.com/elastic/kibana/pull/175178/files#diff-12dc63d6524a714b19d487bcf75486270eea7d5d52e6d1ecdeaa935545f33ac0)
- [x]
[x-pack/plugins/security_solution/common/utility_types.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8d3ac0c16b9803465d90e48032b32738dfe8ff891b152677542607db57cb684b)
- [ ]
[x-pack/plugins/security_solution/public/common/components/page/manage_query.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-43f472ce0931147aadfa34f11cbb0804c1ef968a999528f3ac70ac39977dde21)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/network/dns_top_domains.ts](https://github.com/elastic/kibana/pull/175178/files#diff-f8273324b45291f2561273d33a0080807a82fb7deb08124d06418f2882360d5b)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/users/kpi_user_authentication_metric_failure.ts](https://github.com/elastic/kibana/pull/175178/files#diff-4653e6776fc5d5ab3dba81b9d1df1b23d936975d5770c6456eb6ecda99951b8b)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/users/kpi_user_authentications_area.ts](https://github.com/elastic/kibana/pull/175178/files#diff-c69f65409bc0c3c1d986616357292a9506e02d5510f418e3969add19ed5c9073)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/users/kpi_user_authentications_bar.ts](https://github.com/elastic/kibana/pull/175178/files#diff-0b2b3087618234227771b2c2c7b905c727225a158f21cdc7f70148ec22938ad8)
- [ ]
[x-pack/plugins/security_solution/public/common/components/visualization_actions/lens_attributes/users/kpi_user_authentications_metric_success.ts](https://github.com/elastic/kibana/pull/175178/files#diff-c4ccd8146a7b8614dd2b431e552f0a9cdd2fa759e852f16898b1e4ca5ae31520)
- [ ]
[x-pack/plugins/security_solution/public/common/lib/kibana/hooks.ts](https://github.com/elastic/kibana/pull/175178/files#diff-8aba26a2e24f78b4272485f28691a6315422c65537c9ae54ff5754b0bd75bc5d)
- [ ]
[x-pack/plugins/security_solution/public/detection_engine/rule_creation_ui/components/description_step/index.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-cfed12b5fe28617d39f22c2f5e5573e1f7c5bab15bc274245b71fefb0b67540f)
- [ ]
[x-pack/plugins/security_solution/public/management/components/endpoint_response_actions_list/components/actions_log_table.tsx](https://github.com/elastic/kibana/pull/175178/files#diff-e15c09422e069163df1b0e68c612fe7000aa83c817bbca386f5a59a6251ccfab)
- [ ]
[x-pack/plugins/security_solution/scripts/endpoint/common/agent_downloads_service.ts](https://github.com/elastic/kibana/pull/175178/files#diff-74090a1d7f0d5bcef92cf0f90c279334c8742fc45dad51dcc733113124689847)
- [ ]
[x-pack/plugins/security_solution/server/endpoint/services/actions/clients/mocks.ts](https://github.com/elastic/kibana/pull/175178/files#diff-cd5726e4db2d4f93c2fa913032e9803facf1ed926ce0ba38864c0342d9ff968e)
- [ ]
[x-pack/plugins/security_solution/server/lib/detection_engine/routes/utils.ts](https://github.com/elastic/kibana/pull/175178/files#diff-637b99199ff7a5c6e2cc30bf4a460118fc7357afe5f60bdfeb0cb724701fc405)
- [ ]
[x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/bulk_actions/utils.ts](https://github.com/elastic/kibana/pull/175178/files#diff-288cb69918810a15b715a67fd6d978dfc6aaa64630b3f06ff5c9bf7485cb8cc7)
- [ ]
[x-pack/plugins/security_solution/server/lib/detection_engine/rule_management/logic/bulk_actions/validations.ts](https://github.com/elastic/kibana/pull/175178/files#diff-b6c6d3cff1c78443a0b5d34b6ec820ce9fa8584b1a88c82b7fde100788655381)
- [ ]
[x-pack/plugins/security_solution/server/lib/risk_score/prebuilt_dev_tool_content/routes/read_prebuilt_dev_tool_content_route.ts](https://github.com/elastic/kibana/pull/175178/files#diff-f2f612dd995d2c059b2e28dde1009b16c361ce9e1ae4600343c47d3beacfb0a3)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Nick Partridge <nick.ryan.partridge@gmail.com>
Co-authored-by: Aleh Zasypkin <aleh.zasypkin@elastic.co>
Co-authored-by: Dario Gieselaar <dario.gieselaar@elastic.co>
Co-authored-by: achyutjhunjhunwala <achyut.jhunjhunwala@elastic.co>
Co-authored-by: Justin Kambic <jk@elastic.co>
Co-authored-by: Jan Monschke <jan.monschke@elastic.co>
2024-02-25 01:23:57 +00:00
Ievgen Sorokopud
c38410affe
[Exceptions][Value Lists] Add file type and size constraints to value list uploads (#8507) (#176074)
## Summary

Addresses https://github.com/elastic/security-team/issues/8507

With these changes we address the issue where users can upload any file
to be imported as a value list.

The restrictions are:
* Users should be limited to uploading .txt or .csv. All other file
types should return a 415.
* Users should be limited to uploading files of 9K bytes size. Files
larger than that should return a 413.

### Checklist

Delete any items that are not applicable to this PR.

- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [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
- [x] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [ESS 97
times](https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/5019)
- [Serverless 97
times](https://buildkite.com/elastic/kibana-flaky-test-suite-runner/builds/5020)
2024-02-07 10:22:19 +01:00
Tomasz Kajtoch
b043545208
Upgrade EUI to v91.0.0 (with backports) (#170716)
`v90.0.0``v91.0.0-backport.0`

⚠️ While this upgrade pings many teams and has a large code diff, **the
majority of the changes are snapshots or tests-related** and do not
touch source code, so should theoretically only need a code review and
not dedicated QA.

The changes in EUI that required a large swathe of these updates are:

- **EuiPopover** removed an extra unnecessary `<div>` wrapper on its
anchors, which affected many snapshots and a few CSS overrides, which
should have been updated
- **EuiButtonGroup** now renders `<button>` elements instead of `<input
type="radio">` elements for single selection, which affected both
snapshots and E2E tests
- **EuiSuperDatePicker**'s absolute date input now requires an `Enter`
keypress when parsing dates (affected E2E tests)
- **EuiComboBox**, when rendered with `singleSelection={{ plainText:
'true' }}`, no longer renders a pill (i.e. text). This combobox type now
behaves more like an `EuiFieldText`, where the selection is rendered via
input `value` instead. This affected a high amount of E2E tests (both
FTR and Cypress), both in terms of updating assertions and changing
selections, but should **not** significantly affect user experience -
see https://github.com/elastic/eui/pull/7332 for more.

---

##
[`v91.0.0-backport.0`](https://github.com/elastic/eui/tree/v91.0.0-backport.0)

**This is a backport release only intended for use by Kibana.**

- Added `esqlVis`, `pipeBreaks`, and `pipeNoBreaks` icon glyphs.
- `EuiSelectable` now allows configurable text truncation via
`listProps.truncationProps`
([#7388](https://github.com/elastic/eui/pull/7388))
- `EuiTextTruncate` now supports a new `calculationDelayMs` prop for
working around font loading or layout shifting scenarios
([#7388](https://github.com/elastic/eui/pull/7388))

**Bug fixes**

- Fixed a bug with `EuiSelectable`s with custom `truncationProps`, where
scrollbar widths were not being accounted for
([#7392](https://github.com/elastic/eui/pull/7392))

## [`91.0.0`](https://github.com/elastic/eui/tree/v91.0.0)

- Updated the background color of `EuiPopover`s in dark mode to increase
visibility & contrast against other page/panel backgrounds
([#7310](https://github.com/elastic/eui/pull/7310))
- Memoized `EuiDataGrid` to prevent unneeded re-renders
([#7324](https://github.com/elastic/eui/pull/7324))
- Added a configurable `role` prop to `EuiAccordion`
([#7326](https://github.com/elastic/eui/pull/7326))
- Added a configurable `role` prop to `EuiGlobalToastList`
([#7328](https://github.com/elastic/eui/pull/7328))
- For greater flexibility, `EuiSuperDatePicker` now allows users to
paste ISO 8601, RFC 2822, and Unix timestamps in the `Absolute` tab
input, in addition to timestamps in the `dateFormat` prop
([#7331](https://github.com/elastic/eui/pull/7331))
- Plain text `EuiComboBox`es now behave more like a normal text
field/input. Backspacing will no longer delete the entire value, and
selected values can now be double clicked and copied.
([#7332](https://github.com/elastic/eui/pull/7332))
- `EuiDataGrid`'s display settings popover now allows users to clear the
"Lines per row" input before typing in a new number
([#7338](https://github.com/elastic/eui/pull/7338))
- Improved the UX of `EuiSuperDatePicker`'s Absolute tab for users
manually typing in timestamps
([#7341](https://github.com/elastic/eui/pull/7341))
- Updated `EuiI18n`s with multiple `tokens` to accept dynamic `values`
([#7341](https://github.com/elastic/eui/pull/7341))

**Bug fixes**

- Fixed `EuiComboBox`'s `onSearchChange` callback to pass the correct
`hasMatchingOptions` value
([#7334](https://github.com/elastic/eui/pull/7334))
- Fixed an `EuiSelectableTemplateSitewide` bug where the `popoverButton`
behavior would break if passed a non-DOM React wrapper
([#7339](https://github.com/elastic/eui/pull/7339))

**Deprecations**

- `EuiPopover`: deprecated `anchorClassName`. Use `className` instead
([#7311](https://github.com/elastic/eui/pull/7311))
- `EuiPopover`: deprecated `buttonRef`. Use `popoverRef` instead
([#7311](https://github.com/elastic/eui/pull/7311))
- `EuiPopover`: removed extra `.euiPopover__anchor` div wrapper. Target
`.euiPopover` instead if necessary
([#7311](https://github.com/elastic/eui/pull/7311))
- Deprecated `EuiButtonGroup`'s `name` prop. This can safely be removed.
([#7325](https://github.com/elastic/eui/pull/7325))

**Breaking changes**

- Removed deprecated `euiPaletteComplimentary` - use
`euiPaletteComplementary` Instead
([#7333](https://github.com/elastic/eui/pull/7333))

**Accessibility**

- Updated `type="single"` `EuiButtonGroup`s to render standard buttons
instead of radio buttons under the hood, per recent a11y recommendations
([#7325](https://github.com/elastic/eui/pull/7325))
- `EuiAccordion` now defaults to a less screenreader-noisy `group` role
instead of `region`. If your accordion contains significant enough
content to be a document landmark role, you may re-configure it back to
`region`. ([#7326](https://github.com/elastic/eui/pull/7326))
- Reduced screen reader noisiness when sorting `EuiDataGrid` columns via
toolbar ([#7327](https://github.com/elastic/eui/pull/7327))
- `EuiGlobalToastList` now defaults to a `log` role. If your toasts will
always require immediate user action, consider (with caution) using the
`alert` role instead.
([#7328](https://github.com/elastic/eui/pull/7328))

**CSS-in-JS conversions**

- Updated `$euiFontFamily` and `$euiCodeFontFamily` to match Emotion
fonts ([#7332](https://github.com/elastic/eui/pull/7332))

---------

Co-authored-by: Cee Chen <constance.chen@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Cee Chen <549407+cee-chen@users.noreply.github.com>
Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
2023-12-18 11:15:15 -06:00
Gergő Ábrahám
44d7c0ae95
[EDR Workflows] Add matches capabilities to Endpoint Exception creation (#166002)
## Summary

This PR adds `matches` (`wildcard include`) and `does not match`
(`wildcard exclude`) to fields which support them when creating an
Endpoint exception.

For backwards compatibility with Endpoints < 8.2.0, Manifest Manager
adds the following entry to Endpoint Exceptions containing _only_
wildcards:
```json
{
  "field": "event.module",
  "operator": "included",
  "type": "exact_cased",
  "value": "endpoint"
}
```

> [!Note]
> Warnings for wrongly formatted wildcards don't seem to work correctly
at the moment. #170495 will bring some changes in the related functions,
so this PR is waiting on that to be merged.


<img width="1465" alt="image"
src="db04fe0b-4cb3-4cba-a6d7-622a2239f059">

## Sample manifests
### Linux
⚠️ On Linux, the type is always `wildcard_cased`, see the following
comment for details:
https://github.com/elastic/kibana/pull/120349#issuecomment-989963682
```json
{
  "entries": [
    {
      "type": "simple",
      "entries": [
        {
          "field": "file.path",
          "operator": "included",
          "type": "wildcard_cased",
          "value": "*/test/*"
        },
        {
          "field": "event.module",
          "operator": "included",
          "type": "exact_cased",
          "value": "endpoint"
        }
      ]
    }
  ]
}
```

### Windows
```json
{
  "entries": [
    {
      "type": "simple",
      "entries": [
        {
          "field": "file.path",
          "operator": "included",
          "type": "wildcard_caseless",
          "value": "*/test/*"
        },
        {
          "field": "event.module",
          "operator": "included",
          "type": "exact_cased",
          "value": "endpoint"
        }
      ]
    }
  ]
}
```

### Checklist

Delete any items that are not applicable to this PR.

- [ ] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [ ]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials
- [ ] [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
- [ ] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [ ] Any UI touched in this PR does not create any new axe failures
(run axe in browser:
[FF](https://addons.mozilla.org/en-US/firefox/addon/axe-devtools/),
[Chrome](https://chrome.google.com/webstore/detail/axe-web-accessibility-tes/lhdoppojpmngadmnindnejefpokejbdd?hl=en-US))
- [ ] If a plugin configuration key changed, check if it needs to be
allowlisted in the cloud and added to the [docker
list](https://github.com/elastic/kibana/blob/main/src/dev/build/tasks/os_packages/docker_generator/resources/base/bin/kibana-docker)
- [ ] This renders correctly on smaller devices using a responsive
layout. (You can test this [in your
browser](https://www.browserstack.com/guide/responsive-testing-on-local-server))
- [ ] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)
2023-12-05 01:59:45 -07:00
Wafaa Nasr
a4ed14bec8
[Security Solution][API testing] Move and restructures Lists APIS (#171992)
## Summary

Following the initial work in this
https://github.com/elastic/kibana/pull/166755
- Addresses part of https://github.com/elastic/kibana/issues/151902 for
List APIs tests
- Added a new folder under the `security_solution_api_integration`
called `lists_and_exception_lists` to hold the lists and exception lists
tests, and split the `List` APIs into two groups since the execution
time in Serverless was close to 30 mins
- Modified the
[x-pack/plugins/lists/common/schemas/response/exception_list_item_schema.mock.ts](https://github.com/elastic/kibana/pull/171992/files#diff-4e3545fdeb8c8d9467cfa1c4aa88194e189193a92fa6f1cf5f859b1ef1beb45c),
[x-pack/plugins/lists/common/schemas/response/exception_list_schema.mock.ts](https://github.com/elastic/kibana/pull/171992/files#diff-c3cc18faf07aab86e307185d41599c3596a3f8b360d3e4829591afa148283238)
,
[x-pack/plugins/lists/common/schemas/response/list_item_schema.mock.ts](https://github.com/elastic/kibana/pull/171992/files#diff-608579ca5e65da74f41319a58d81ab12cc3d79d389b087806c7b74949fbc6cc3),
[x-pack/plugins/lists/common/schemas/response/list_schema.mock.ts](https://github.com/elastic/kibana/pull/171992/files#diff-efc64eb35937a8da28fc982c527253c0923650ae4163d4bbc203d3ebc2949835)
to accept `elastic user` input because it changes in ESS and Serverless
- Deleted the `x-pack/test/lists_api_integration` folder
- Moved the utility files associated with Basic tests to the new
directory `security_solution_api_integration`. Files not actively used
in the previous folder were moved, while duplicate files remained in
their original positions.
- Updated the below files imports from the old `lists_api_integration`
folder to the new `lists_and_exception_lists`

    ```
      lists_api_integration/  
        - exceptions/operators_data_types/date_numeric_types/date.ts
        - exceptions/operators_data_types/date_numeric_types/double.ts
        - exceptions/operators_data_types/date_numeric_types/float.ts 
        - exceptions/operators_data_types/date_numeric_types/integer.ts
        - exceptions/operators_data_types/ips/ip.ts
        - exceptions/operators_data_types/ips/ip_array.ts
        - exceptions/operators_data_types/keyword/keyword.ts
        - exceptions/operators_data_types/keyword/keyword_array.ts
        - exceptions/operators_data_types/long/long.ts
        - exceptions/operators_data_types/text/text.ts
        - exceptions/operators_data_types/text/text_array.ts
        - exceptions/workflows/create_endpoint_exceptions.ts
        - exceptions/workflows/create_rule_exceptions.ts
        - exceptions/workflows/find_rule_exception_references.ts
        - exceptions/workflows/role_based_add_edit_comments.ts
        - exceptions/workflows/role_based_rule_exceptions_workflows.ts
        - exceptions/workflows/rule_exception_synchronizations.ts
        - rule_execution_logic/execution_logic/esql.ts
        - rule_execution_logic/execution_logic/machine_learning.ts
        - rule_execution_logic/execution_logic/new_terms.ts
        - rule_execution_logic/execution_logic/query.ts
        - telemetry/task_based/all_types.ts
        - telemetry/task_based/detection_rules.ts
        - telemetry/task_based/security_lists.ts
     ```
     ```
These files should be moved too soon to the new `lists_api_integration`
        detection_engine_api_integration/security_and_spaces/group10
            - import_export_rules.ts 
            - import_rules.ts
            - perform_bulk_actions   
     ```

- Updated the below files imports to the
`ftr_provider_context_with_spaces.d.ts`
` - risk_engine/risk_scoring_task/task_execution_nondefault_spaces.ts`

- The QA phase concluded with all tests passing successfully. 🟢  

- Updated the CodeOwner file for the newly moved tests

- Add a new util file to `deleteAllExceptions` under the old
`detection_engine_api` folder since the Rule management related-tests
are still need to be moved over to the new folder

- Old/new group details, decisions, and execution time are mentioned in
this
[document](https://docs.google.com/document/d/1CRFfDWMzw3ob03euWIvT4-IoiLXjoiPWI8mTBqP4Zks/edit)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-11-28 16:40:09 +01:00
Candace Park
69b2cd2b38
[Security Solution][Admin][Policy][Event Filters] Update event filters creation to include more match options (#170495)
## Summary

- [x] Adds a `matches` and `does not match` operator option to all
eligible event filter creation entry fields that support matches
- [x] Updates the existing warning to only appear if that is the
`file.path.text` entry field is selected
- [x] Generalize the warning for wildcard usage if operator is matches
and a wildcard is used in the value
- [x] Updates wildcard warning tooltip to include "Creating event
filters with both `matches` and `does not match` operators may
significantly decrease performance."
- [x] Unit tests

# Screenshots

![efmatch](9efad4f7-e49f-4542-9052-08e578ea4f6b)

Warning about wildcards affecting Endpoint performance
<img width="1219" alt="image"
src="5bceec10-6387-44d5-bc7f-76de1816ce46">


# Event Filter & Artifact 
**LINUX**

![image](4bba92ff-965a-47d9-b2e8-0a94b322acd8)
<details open>
<summary> linux artifact entry </summary>
<p>

```
{
  "entries": [
    {
      "type": "simple",
      "entries": [
        {
          "field": "event.category",
          "operator": "included",
          "type": "wildcard_cased",
          "value": "network"
        },
        {
          "field": "process.name",
          "operator": "included",
          "type": "exact_cased",
          "value": "network"
        }
      ]
    }
  ]
}
```
</p>
</details open>

**WINDOWS**

![image](e44020c7-0701-482a-bb74-6a1150b5552c)
<details open>
<summary> windows artifact entry </summary>
<p>

```
{
  "entries": [
    {
      "type": "simple",
      "entries": [
        {
          "field": "event.kind",
          "operator": "included",
          "type": "wildcard_cased",
          "value": "event"
        },
        {
          "field": "process.name",
          "operator": "included",
          "type": "exact_caseless",
          "value": "event"
        },
        {
          "field": "event.category",
          "operator": "included",
          "type": "wildcard_cased",
          "value": "authentication"
        },
        {
          "field": "process.name",
          "operator": "included",
          "type": "exact_caseless",
          "value": "authentication"
        }
      ]
    }
  ]
}
```
</p>
</details open>

**MAC**

![image](9c1782f8-2386-4cf0-8236-fa613bb6f9ee)

<details open>
<summary> mac artifact entry</summary>
<p>

```
{
  "entries": [
    {
      "type": "simple",
      "entries": [
        {
          "field": "event.id",
          "operator": "included",
          "type": "wildcard_cased",
          "value": "071e1cfc-8333-4c6c-965a-00678c7b1d61"
        },
        {
          "field": "process.name",
          "operator": "included",
          "type": "exact_caseless",
          "value": "071e1cfc-8333-4c6c-965a-00678c7b1d61"
        },
        {
          "field": "file.path",
          "operator": "included",
          "type": "wildcard_cased",
          "value": "C:\\My Documents\\business\\January\\processName"
        },
        {
          "field": "process.name",
          "operator": "included",
          "type": "exact_caseless",
          "value": "C:\\My Documents\\business\\January\\processName"
        }
      ]
    }
  ]
}
```
</p>
</details open>
2023-11-27 00:39:44 -07:00
Alejandro Fernández Haro
fd09c26d15
async-import plugins in the server side (#170856)
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-11-15 00:55:56 -07:00
Mark Hopkin
71f1dc7bd5
[Entity Analytics] Remove nested message.message property from risk engine API error responses (#170645)
## Summary

**TLDR:** change risk engine API error response bodies from `{ message :
{ message : 'blah', full_error : 'something'}}` to `{ message : 'blah',
full_error : 'something'}`

I noticed a UI bug when the risk engine "init" call returns an error,
this was because the UI was expecting `error.message` to be a string but
it was an object with another nested message property.

This lead me to investigate why this was the case, turns out our error
wrapper was always putting things under a `message` key which in our
case we do not want.

### UI crash before

```
Uncaught Error: Objects are not valid as a React child (found: object with keys {message}). If you meant to render a collection of children, use an array instead.
```
<img width="806" alt="Screenshot 2023-11-06 at 14 02 17"
src="25066a14-dabf-46a0-9741-a81f886f64fb">


### Correct error display after
<img width="1171" alt="Screenshot 2023-11-06 at 13 51 04"
src="af8db564-a119-4fc8-9821-bafcfe19b421">


### Checklist

Delete any items that are not applicable to this PR.

- [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
2023-11-08 15:38:21 +00:00
Marta Bondyra
3a784106df
[testing] replace testing-library/dom package with testing-library/react (#170594)
## Summary

Removes `testing-library/dom` from dependencies. As all the utilities
from`dom` are available already in `testing-library/react`, there's no
need to have both `dom` and `react` libraries available in our
package.json.

Following the [@testing-library/react
documentation:](https://testing-library.com/docs/react-testing-library/intro)

> [React Testing
Library](https://github.com/testing-library/react-testing-library)
builds on top of DOM Testing Library by adding APIs for working with
React components.

Let's just import everything from `testing-library/react`, this way we
won't need to worry about inconsistencies between `testing-library/dom`
we have in our `package.json` and the one that is
`testing-library/react` dependency.
2023-11-08 15:53:48 +01:00
David Sánchez
6a0fa94cbb
[Security Solution][Endpoint] Adapt exception list api calls to versioned router (#165658)
## Summary

- Adds version to http calls for endpoint exceptions at Lists API.
- Fixes unit test.

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-09-07 17:35:15 +02:00
Marshall Main
21879be883
[Security Solution] Migrate lists plugin API to versioned router (#165160)
Closes https://github.com/elastic/security-team/issues/7176
2023-08-31 07:48:01 -07:00
Vitalii Dmyterko
116c4b809e
[Security Solution][Detection engine] refactors lists legacy templates/ILM API calls in Serverless env. (#164844)
## Summary

- moved deletion of legacy index template inside to
`migrateListIndexToDataStream` and `migrateListToDataStream`. That would
allow us not to rely on `410` error to tell if we are in Serverless
environment and `_template` API is blocked. Migrate to DS function is
called only in Stateful environment, as lists indices do not exist in
Serverless
- deletion of legacy index template during migration has also other
benefit: it will be called eventually for every instance of Kibana, and
be more efficient then just calling it during index creation
2023-08-30 10:25:37 +01:00
Tiago Costa
2d652e1313
chore(NA): upgrade typescript into v4.7.4 (#162738)
This PR bumps the Typescript version used on Kibana into v4.7.4.

During the upgrade I got the impression the majority of the failures
were too specific to the codebase so instead of making assumptions I
choose to marked a lot of them with `@ts-expect-error` and let each team
decide how to handle it.

Next you can find a list of files with those comments and the teams to
who they belong to. I would appreciate the collaboration from each team
on fixing those. I'm not opposed on fixing those in subsequent PRs after
this one have been merged, just wanted to elaborate that list for a good
follow up:

@elastic/kibana-core 
- [x]
[packages/core/http/core-http-router-server-internal/src/request.ts](https://github.com/elastic/kibana/pull/162738/files#diff-c1f4a8c013c6ff9c5170803322414cb002f70331b23e45c55f075258c678410a)

@elastic/kibana-data-discovery  
- [x]
[src/plugins/discover/public/components/doc_table/components/table_row.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-9106b254a57e73fc6f0b2e01f9aff1abbd26f1a0999e6fa998f1b45d3013038f)

@elastic/kibana-visualizations   
- [x]
[src/plugins/expressions/common/execution/execution.ts](https://github.com/elastic/kibana/pull/162738/files#diff-47bf3af7472c08ede90f86575ee7db4b8a2c949b1fb61400410ed16a8d819667)
- [x]
[src/plugins/expressions/common/expression_functions/expression_function_parameter.ts](https://github.com/elastic/kibana/pull/162738/files#diff-3bcaa3c50f2297ff990c7ac83a1c2d36a79e6706a09082c3c48a911713afe950)
- [x]
[src/plugins/vis_types/heatmap/public/editor/components/labels_panel.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-345db24d53f4158414480b890fa43d1f8a454b67313de79602fda081279cbc4f)
- [x]
[src/plugins/vis_types/xy/public/editor/components/options/metrics_axes/label_options.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-1c346b41cf025ff4f4e07b6d6dcdd1451cbaa758f9a9e8c72a9801d3fbbdfda2)

@elastic/kibana-presentation 
- [x]
[x-pack/plugins/canvas/public/components/workpad_page/workpad_interactive_page/event_handlers.ts](https://github.com/elastic/kibana/pull/162738/files#diff-56858ed9be77830ab218eab1960337240926609c5a1593b3960b35660ef81359)

@elastic/response-ops  
- [x]
[x-pack/plugins/cases/public/components/create/form.test.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-c5c415f1f56ca986f4bb59e65490b5e0fc77a86092240c0c1a26c141dba07818)
- [x]
[x-pack/plugins/cases/public/components/markdown_editor/editable_markdown_renderer.test.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-ab038916f6fed59e18b0a72ce8e823e88d115afdb2704010d0fa8656b66702df)
- [x]
[x-pack/plugins/rule_registry/server/alert_data_client/browser_fields/index.ts](https://github.com/elastic/kibana/pull/162738/files#diff-3f91aa93f7e6514c0479a37a76d6e9a53646d4eaf5dcd0db64437eadf1eee6b6)
- [x]
[x-pack/plugins/triggers_actions_ui/.storybook/decorator.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-fbf1d6d0104c11c3f3690d29edf06000b5a63a858bb22b7d04d1f96a45133b07)
- [x]
[x-pack/plugins/triggers_actions_ui/common/experimental_features.ts](https://github.com/elastic/kibana/pull/162738/files#diff-8e2ca70700895b17125532779945a1d0ab9076b4d4db304c065b47f82b6628a5)
- [x]
[x-pack/plugins/triggers_actions_ui/public/common/get_experimental_features.test.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-8e2ca70700895b17125532779945a1d0ab9076b4d4db304c065b47f82b6628a5)

@elastic/fleet 
- [x]
[x-pack/plugins/fleet/common/experimental_features.ts](https://github.com/elastic/kibana/pull/162738/files#diff-a852b157b5ff1d6dbf321ea8a25f0020d8f88cd458378cc9de8ef25ce28c9414)
- [x]
[x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/components/agent_policy_advanced_fields/index.test.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-9eea0be0f9341dd6369720ce7b11bff69dda51230337ebbae921f6abde187bd2)
- [x]
[x-pack/plugins/fleet/public/applications/fleet/sections/agent_policy/list_page/index.test.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-844d5f9707b739d25f2b73bd34c45c21e2e5d573b3238c13130a0d1c1db092dc)
- [x]
[x-pack/plugins/fleet/public/applications/fleet/sections/agents/agent_list_page/index.test.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-f88d92abbc549ddc95d693bf3a3bc9752613cf74f1e859a01ca61d572e031b11)
- [x]
[x-pack/plugins/fleet/server/mocks/index.ts](https://github.com/elastic/kibana/pull/162738/files#diff-d3f3e436b158ac2d877b7be9d57642855f89b0149cc28735811443da45bb079f)

@elastic/security-detection-engine
- [x]
[x-pack/plugins/lists/server/services/extension_points/extension_point_storage_client.ts](https://github.com/elastic/kibana/pull/162738/files#diff-dbbf5a8541e06fd977c66e44d9ef59f738d953bdfda679ac838e098742c92f50)
- [x]
[x-pack/plugins/lists/server/services/extension_points/types.ts](https://github.com/elastic/kibana/pull/162738/files#diff-31186826bea8fdb286a25878fa06eeacad8f7a6c384d617fed905d4625821eef)

@elastic/security-defend-workflows @gergoabraham 
- [x]
[x-pack/plugins/security_solution/public/detection_engine/rule_response_actions/osquery/osquery_response_action.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-049eeedef2a403ade7c636418e17fc9a3ffc7030eec2f3e013f459721c076470)

@elastic/infra-monitoring-ui 
- [x]
[x-pack/plugins/monitoring/public/application/pages/apm/overview.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-4ab4fa150247d8f522741ae5ea1ea71c102c72f5439410ea869ec1c9dc9878ad)
- [x]
[x-pack/plugins/monitoring/public/application/pages/enterprise_search/overview.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-285a67d9ec93651206608d308e5d1d20ccc98ccccb9bcbf3ee31fe35c1844b42)

@elastic/kibana-security 
- [x]
[x-pack/plugins/security/server/authentication/authenticator.ts](https://github.com/elastic/kibana/pull/162738/files#diff-bd369002fdfd0986f1ce3bf16263fb8b765e01a86832ccf5b4e521811d502038)
- [x]
[x-pack/plugins/security/server/session_management/session_index.ts](https://github.com/elastic/kibana/pull/162738/files#diff-10b76eb52a0e17564ad864def8270bb84a4eb87eb35851309bc36601086cbcd7)

@elastic/security-threat-hunting-explore @gergoabraham 
- [x]
[x-pack/plugins/security_solution/public/common/mock/endpoint/app_context_render.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-7f130bdc9a954330d188aa25324910cf2f72baf76d1329bd36584f5bb153856b)

@elastic/security-solution @gergoabraham 
- [x]
[x-pack/plugins/security_solution/public/management/components/page_overlay/page_overlay.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-e68a2799df17238257a86ce965369c525be901f6f882e518bde9e8c9bd7cd2c8)
- [x]
[x-pack/plugins/security_solution/public/management/pages/policy/view/policy_settings_form/components/event_collection_card.tsx](https://github.com/elastic/kibana/pull/162738/files#diff-edc756f655792f7dcaca0c707f35c6c022981be1873712f460ccb1d611e42568)
- [x]
[x-pack/plugins/security_solution/tsconfig.json](https://github.com/elastic/kibana/pull/162738/files#diff-844dde79a96b9e6c2bfdf21f8c80feb8b687577e21326da6bd15c6b95d8ec918)

@elastic/uptime 
- [x]
[x-pack/plugins/uptime/server/legacy_uptime/lib/alerts/duration_anomaly.test.ts](https://github.com/elastic/kibana/pull/162738/files#diff-6c7b63ce65aa17a2fe3219e1747ae051be88fb02edbe2f198ad6fd418a2bcc57)

@elastic/security-detections-response-alerts @gergoabraham 
- [x]
[x-pack/test/detection_engine_api_integration/security_and_spaces/group8/exception_operators_data_types/keyword_array.ts](https://github.com/elastic/kibana/pull/162738/files#diff-472ba2c7fe43448c8a4d04406703f755f71f6e60146bb2f090b4ca0f19ad0a0f)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Michael Dokolin <dokmic@gmail.com>
Co-authored-by: Stratoula Kalafateli <stratoula1@gmail.com>
Co-authored-by: Rudolf Meijering <skaapgif@gmail.com>
Co-authored-by: Devon Thomson <devon.thomson@elastic.co>
2023-08-24 17:27:13 +01:00
Vitalii Dmyterko
7ee14bc1ae
[Security Solution][Detection Engine] fixes 410 error on index legacy template call (#164682)
## Summary

`_template` API is [blocked on
Serverless](https://docs.google.com/spreadsheets/d/16173D0-FP1UcSHKmZmhB7TbF_TyKtXrdiNWMjq5ASdM/edit#gid=0),
causing 410 error when creating list index.

This `_template` API is used to check existing legacy index templates
for `lists` and `items` indices

So, in this PR, we won't be throwing error if any of `_template` APIs
called in Serverless environement and return `410` code error(Gone)
2023-08-24 13:01:43 +01:00
Vitalii Dmyterko
505d8265c8
[Security Solution][Detection Engine] move lists to data stream (#162508)
## Summary

- addresses https://github.com/elastic/security-team/issues/7198
- moves list/items indices to data stream
  - adds `@timestamp` mapping to indices mappings
- migrate to data stream if indices already exist(for customers < 8.11)
or create data stream(for customers 8.11+ or serverless)
- adds
[DLM](https://www.elastic.co/guide/en/elasticsearch/reference/8.9/data-streams-put-lifecycle.html)
to index templates
- replaces update/delete queries with update_by_query/delete_by_query
which supported in data streams
  - fixes existing issues with update/patch APIs for lists/items
    - update/patch for lists didn't save `version` parameter in ES
- update and patch APIs for lists/items were identical, i.e. for both
routes was called the same `update` method w/o any changes

<details>

<summary>Technical detail on moving API to
(update/delete)_by_query</summary>


`update_by_query`, `delete_by_query` do not support refresh=wait_for,
[only false/true
values](https://www.elastic.co/guide/en/elasticsearch/reference/8.9/docs-update-by-query.html#_refreshing_shards_2).
Which might break some of the use cases on UI(when list is removed, we
refetch all lists. Deleted list will be returned for some time. [Default
refresh time is
1s](https://www.elastic.co/guide/en/elasticsearch/reference/8.9/docs-refresh.html)).
So, we retry refetching deleted/updated document before finishing
request, to return reindexed document

`update_by_query` does not support OCC [as update
API](https://www.elastic.co/guide/en/elasticsearch/reference/8.9/optimistic-concurrency-control.html).
Which is supported in both
[list](https://www.elastic.co/guide/en/security/current/lists-api-update-container.html)/[list
item
](https://www.elastic.co/guide/en/security/current/lists-api-update-item.html)updates
through _version parameter.
_version is base64 encoded "_seq_no", "_primary_term" props used for OCC

So, to keep it without breaking changes: implemented check for version
conflict within update method
</details>

### Checklist

Delete any items that are not applicable to this PR.

- [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

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-08-23 19:42:57 +01:00
Kevin Logan
1a3aefe6ec
[Security Solution][EDR Workflows] Remove the filter on Endpoint Exceptions and Event Filters creation to allow more user flexibility (#162193)
## Summary

This PR removes the predefined sets of Exceptions for Endpoint
Exceptions and Event Filters. This comes after user feedback that we are
too restrictive in which fields we allow users to write Exceptions or
Event Filters for. This will give users much more freedom in creating
Exceptions and Event Filters.

The `filterIndexPatterns()` function is entirely removed as Endpoint
Exceptions and Event Filters were the only features using it. Following
that, the props for many downstream components was updated to remove
reference to this filtering function.

Further, in working the the Endpoint and Protections teams, there are no
concerns with removing these filters from an Endpoint perspective and
the added flexibility for users is welcome.

User now has access to all the fields that we pull back from the index
mappings.

<img width="1728" alt="image"
src="8ccb6b33-e7e7-42d6-a9a9-68e65c3be57d">

<img width="1728" alt="image"
src="35f26431-07b2-4995-932c-6c5023ced7fd">

### Checklist

Delete any items that are not applicable to this PR.

- [x] Any text added follows [EUI's writing
guidelines](https://elastic.github.io/eui/#/guidelines/writing), uses
sentence case text and includes [i18n
support](https://github.com/elastic/kibana/blob/main/packages/kbn-i18n/README.md)
- [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

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-08-03 12:53:17 -04:00
Wafaa Nasr
a2275dd346
[Security Solution] [Detection Engine] Fix exception comment flakiness (#162807)
## Summary

- Addresses https://github.com/elastic/kibana/issues/162565 
- Converting the `Comments` related Cypress test to a FTR test according
to these
[observations](https://github.com/elastic/kibana/issues/162565#issuecomment-1653410937)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-08-01 14:58:40 +01:00
Marshall Main
5da645acee
[Security Solution] Move lists plugin API schemas to /common/api (#162489)
Closes https://github.com/elastic/security-team/issues/7102

Establishes the `/common/api` folder structure for the lists plugin.
This PR simply imports and re-exports the schemas from the schema
package since the schemas are all already separated from the `server`
code. Future PRs will replace these re-exports with schemas generated
from OpenAPI specs.
2023-07-27 15:22:00 -07:00
Alex Szabo
8cf68dc6ba
[Ops] Bump Node.js to version 18 (#160289)
## Summary

Bumps node.js to 18.17.0 (replacement for PR #144012 which was later
reverted)

As a result, these categorical additions were needed: 
- `node` evocations will need the `--openssl-legacy-provider` flag,
wherever it would use certain crypto functionalities
- tests required updating of the expected HTTPS Agent call arguments,
`noDelay` seems to be a default
 - `window.[NAME]` fields cannot be written directly
 - some stricter typechecks

This is using our in-house built node.js 18 versions through the URLs
the proxy-cache. (built with
https://github.com/elastic/kibana-custom-nodejs-builds/pull/4)

These urls are served from a bucket, where the RHEL7/Centos7 compatible
node distributables are. (see:
https://github.com/elastic/kibana-ci-proxy-cache/pull/7)

Further todos: 
 - [x] check docs wording and consistency
 - [ ] update the dependency report
 - [x] explain custom builds in documentation
 - [x] node_sass prebuilts

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Tiago Costa <tiago.costa@elastic.co>
Co-authored-by: Thomas Watson <w@tson.dk>
2023-07-27 14:12:48 +02:00
Wafaa Nasr
fdd709b025
[Security Solution] [Exceptions] Fix Exception Auto-populate from Alert actions (#159908)
## Summary

- Addresses  https://github.com/elastic/kibana/issues/159784

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-06-28 12:14:19 +01:00
Ievgen Sorokopud
31b34771c5
[Security Solution] Improve rules exception flyout opening for the indices with huge amount of fields (#159216)
## Summary

Original ticket:
[#158751](https://github.com/elastic/kibana/issues/158751)

These changes improve the rule's exceptions flyout opening experience.
We had a few complaints that it is very slow to open it and sometimes it
throws an exception about the limited response size.

To fix this, we decided to load extended field's data (conflicts and
unmapped info) only when user selects some field instead of fetching
this data for all fields on flyout opening.

## NOTES:

After these changes we gonna do next steps related to fields loading
when user creates/edits rule exceptions:
1. We will call `_fields_for_wildcard` **WITHOUT**
`include_unmapped=true` parameter to fetch all fields specs on exception
flyout loading
2. We will call `_fields_for_wildcard` **WITH** `include_unmapped=true`
for only one field when user selects it from the dropdown menu

With these changes we will improve slow exception flyout opening when
user has lots of fields which are unmapped in different indices. If for
some reason user has a lot of (thousands) conflicting fields around
indices then the loading is still might be slow as the
`_fields_for_wildcard` call will return conflicts information even
without `include_unmapped=true` parameter.

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-06-15 05:57:15 -07:00
Georgii Gorbachev
5776e97d9c
[Security Solution] Clean up CODEOWNERS and other files for the Detection Engine team (#159729)
## Summary

This PR replaces any mentions of
https://github.com/orgs/elastic/teams/security-solution-platform team
with https://github.com/orgs/elastic/teams/security-detection-engine
according to the recent restructure.
2023-06-14 10:39:50 -07:00
Yara Tercero
f895c5c205
[Detection Engine][Exceptions] - Fix exception item update route (#159223)
## Summary

Addresses issue 159230
2023-06-09 12:31:03 -07:00
Wafaa Nasr
005108684b
[Security Solution][Exceptions]- Increase exceptions test coverage (#152757)
## Summary

- Addresses https://github.com/elastic/security-team/issues/5947
- Adding tests to cover the yellow rows in [test
sheet](https://docs.google.com/spreadsheets/d/1Eb_317s7nkQ4axVA270Ja99PRS-NWrYZAEc-1aVuyXg/edit#gid=0)
- Organise the tests to correspond to the following
[structure](https://docs.google.com/spreadsheets/d/14DdtghpxgfEmWoc7kot4XgEva_4GDEC_uTej65MUjV8/edit?pli=1#gid=0)
- Removed the
`x-pack/plugins/security_solution/cypress/e2e/exceptions/alerts_table_flow/add_exception.cy.ts`
as it was duplicated from
`x-pack/plugins/security_solution/cypress/e2e/exceptions/exceptions_management_flow/exceptions_table.cy.ts`
- Skipped the `flyout_validation` tests until resolving this
[ticket](https://github.com/elastic/kibana/issues/154994)
- Regarding `Exception-List`, `Exception-List-Item` and `Rule with
exceptions` migrations test cases are handled by most of our old `FTR`
tests as most of them deal with `Exception List Schema` which doesn't
include the new props, like the `expire_time` that was introduced in
`8.7`, so adding new tests using the new schema can be treated as
testing the new versions against the existing scenarios whereas the
existing tests for the migrations (downgrade) tests
[4a75a51](4a75a51a3e)
- Tests under `x-pack/plugins/security_solution/cypress/upgrade_e2e` are
just POCs can't be used

# New tests folder structure based on workflow

<img width="432" alt="image"
src="https://user-images.githubusercontent.com/12671903/234849016-f6f227d1-fcaf-43cb-abe3-d3fc7f9cee00.png">

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-06-07 15:15:30 +01:00
Pierre Gayvallet
8453fe820a
Cleanup spread operators in reduce calls (#157471)
## Summary

The spread operator is costly and put pressure on GC. It should be
avoided when possible, especially in loops.

This PR adapts a lot of `reduce` calls in the codebase to remove the
usages of the diabolic spread operator, when possible.

Note: the PR is not fully exhaustive. I focused on the server-side, as
we're more directly impacted than on browser-side code regarding
performances.

## Removing `...` usages in `kittens.reduce()`

For `reduce` loops, the spread operator can usually easily be replaced:

#### - setting a value on the accum object and returning it

#### BAD
```ts
  return this.toArray().reduce(
      (acc, renderer) => ({
        ...acc,
        [renderer.name]: renderer,
      }),
      {} as Record<string, ExpressionRenderer>
    );
```

#### GOOD
```ts
  return this.toArray().reduce((acc, renderer) => {
      acc[renderer.name] = renderer;
      return acc;
    }, {} as Record<string, ExpressionRenderer>);
```


#### - assigning values to the accum object and returning it 

#### BAD
```ts
  const allAggs: Record<string, any> = fieldAggRequests.reduce(
      (aggs: Record<string, any>, fieldAggRequest: unknown | null) => {
        return fieldAggRequest ? { ...aggs, ...(fieldAggRequest as Record<string, any>) } : aggs;
      },
      {}
    );
```

#### GOOD
```ts
  const allAggs = fieldAggRequests.reduce<Record<string, any>>(
      (aggs: Record<string, any>, fieldAggRequest: unknown | null) => {
        if (fieldAggRequest) {
          Object.assign(aggs, fieldAggRequest);
        }
        return aggs;
      },
      {}
    );
```

#### - pushing items to the accum list and returning it 

#### BAD
```ts
  const charsFound = charToArray.reduce(
    (acc, char) => (value.includes(char) ? [...acc, char] : acc),
    [] as string[]
  );
```

#### GOOD
```ts
  const charsFound = charToArray.reduce((acc, char) => {
    if (value.includes(char)) {
      acc.push(char);
    }
    return acc;
  }, [] as string[]);
```

## Questions

#### Are you sure all the changes in this are strictly better for
runtime performances?

Yes, yes I am.

#### How much better?

Likely not much.

#### Are you planning on analyzing the perf gain?

Nope.

#### So why did you do it?

I got tired of seeing badly used spread operators in my team's owned
code, and I had some extra time during on-week, so I spent a few hours
adapting the usages in all our runtime/production codebase.

#### Was it fun?

Take your best guess.

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-05-22 04:50:24 -07:00