Commit graph

82992 commits

Author SHA1 Message Date
Shahzad
c736630652
Merge branch 'main' into renovate/main-p-map 2025-01-23 08:32:25 +01:00
Kibana Machine
5e8188a960
[api-docs] 2025-01-23 Daily api_docs build (#207980)
Generated by
https://buildkite.com/elastic/kibana-api-docs-daily/builds/961
2025-01-23 06:57:47 +00:00
Ying Mao
b219962bda
Revert "[ES body removal] @elastic/response-ops (#204882)" (#207899)
This reverts commit 7bb2dad38f.

Original PR https://github.com/elastic/kibana/pull/204882 caused errors
updating alert data stream index mappings in serverless. This seems to
be a difference in the Elasticsearch client code handling requests with
a body param vs requests without a body param
a4315a905e (diff-07b3475acb306ea63796d4e5cc559c073a63b84c8deeb9948d9ef24fb04c6439)
2025-01-22 22:47:06 -06:00
Yuliia Naumenko
7f98b6bf5d
[Inference AI Connector] Added elastic provider for EIS and enhancements (#205672)
## Summary

Current PR creates a new platform shared plugin named
`inference_endpoint` to expose in Kibana the new internal API
`_inference/_services`, which returns the list of inference providers
with the configuration settings.

Changed `@kbn/inference_endpoint_ui_common` package to fetch dynamically
the list of providers by using the route introduced in
`inference_endpoint` plugin.
Added fields settings filter based on the selected task in the
`supported_task_types`.

Cleaned up the types consolidating all in the package
`@kbn/inference_endpoint_ui_common`.
Changed .inference connector to use `unified_completion` subAction for
selected `chat_completion` task type.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: pgayvallet <pierre.gayvallet@elastic.co>
2025-01-22 18:32:57 -08:00
elastic-renovate-prod[bot]
c6e9821bb8
Update dependency @redocly/cli to ^1.27.2 (main) (#207527) 2025-01-22 22:48:54 +00:00
Tiago Costa
ce853fc391
skip flaky suite (#207384) 2025-01-22 22:06:43 +00:00
Christiane (Tina) Heiligers
c63bdb6baa
Adds tests to ensure registered SO types aren't removed (#207142)
fix https://github.com/elastic/kibana/issues/207128

We have an integration test to check that saved objects aren't removed
and another that catches mappings changes.
This PR adds another assertion to ensure that the message is clear:
Removing a saved object type is not allowed after 8.8.

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-01-22 14:36:34 -07:00
Tiago Costa
b3e7617ae3
skip flaky suite (#207077) 2025-01-22 20:50:28 +00:00
Tiago Costa
676e5a974c
skip flaky suite (#207712) 2025-01-22 20:44:25 +00:00
Tiago Costa
f8254f0ea6
skip flaky suite (#207024) 2025-01-22 20:37:42 +00:00
Tiago Costa
ea4a38d60d
skip flaky suite (#207404) 2025-01-22 20:36:36 +00:00
Tiago Costa
e15350ea6f
skip flaky suite (#204381) 2025-01-22 20:26:16 +00:00
Tiago Costa
bf52799dc4
skip flaky suite (#205953) 2025-01-22 20:24:07 +00:00
Tiago Costa
9d109a304c
skip flaky suite (#207328) 2025-01-22 20:12:46 +00:00
Zacqary Adam Xeper
8004e3e70a
[Response Ops] [Rule Form] Add Show Request and Add Action screens to flyout (#206154)
## Summary

Part of #195211

- Adds Show Request screen to the new rule form flyout

<details>
<summary>Screenshot</summary>
<img width="585" alt="Screenshot 2025-01-10 at 1 30 15 PM"
src="https://github.com/user-attachments/assets/72500b0d-d959-4d17-944e-a7dc0894fb98"
/>
</details>

- Renders the action connectors UI within the flyout instead of opening
a modal
 
<details>
<summary>Screenshot</summary>
<img width="505" alt="Screenshot 2025-01-10 at 1 28 38 PM"
src="https://github.com/user-attachments/assets/b5b464c0-7359-43ab-bea1-93d2981a5794"
/>
</details>

- Duplicates the dropdown filter design from the flyout UI within the
action connectors modal when displayed on a smaller screen

<details>
<summary>Screenshot</summary>
<img width="809" alt="Screenshot 2025-01-10 at 1 30 28 PM"
src="https://github.com/user-attachments/assets/5ef28458-1b6d-4a29-961d-fbcc1640e706"
/>
</details>

### Implementation notes

In order to get the action connectors UI to render the same way in both
a modal and the flyout, without duplicating a large amount of code, I
had to introduce a little bit of complexity. Within the Rule Page, it's
as simple as opening the UI inside a modal, but the flyout cannot open a
second flyout; it has to know when and how to completely replace its own
contents.

- The bulk of the action connectors UI is now moved to
`<RuleActionsConnectorsBody>`. `<RuleActionsConnectorsModal>` and
`<RuleFlyoutSelectConnector>` act as wrappers for this component.
- The `<RuleActions>` step no longer handles rendering the connector UI,
because it's not at a high enough level to know if it's in the
`<RulePage>` or the `<RuleFlyout>`. Instead, it simply sends a signal up
the context hierarchy to `setIsConnectorsScreenVisible`.
- A new context called `RuleFormScreenContext` keeps track of
`isConnectorsScreenVisible`, a state for whether or not the action
connectors "screen" is open, regardless of whether that screen is
displayed in a modal or a flyout.
- The Rule Page uses `isConnectorsScreenVisible` to determine whether to
render the modal. This works the same way as it used to, but handled by
the `<RulePage>` instead of the `<RuleActions>` component.
- The Rule Flyout uses `isConnectorsScreenVisible` to determine whether
to continue to render `<RuleFlyoutBody>` or to completely replace its
contents with `<RuleFlyoutSelectConnector>`

For consistency, this PR also moves the Show Request modal/flyout screen
into the same system.

### Testing

To test the new flyout, edit
`packages/response-ops/rule_form/src/create_rule_form.tsx` and
`packages/response-ops/rule_form/src/edit_rule_form.tsx` so that they
render `<RuleFlyout>` instead of `<RulePage>`.

<details>
<summary><strong>Use this diff block</strong></summary>

```diff
diff --git a/packages/response-ops/rule_form/src/create_rule_form.tsx b/packages/response-ops/rule_form/src/create_rule_form.tsx
index 2f5e0472dcd..564744b96ec 100644
--- a/packages/response-ops/rule_form/src/create_rule_form.tsx
+++ b/packages/response-ops/rule_form/src/create_rule_form.tsx
@@ -31,6 +31,7 @@ import {
   parseRuleCircuitBreakerErrorMessage,
 } from './utils';
 import { RULE_CREATE_SUCCESS_TEXT, RULE_CREATE_ERROR_TEXT } from './translations';
+import { RuleFlyout } from './rule_flyout';
 
 export interface CreateRuleFormProps {
   ruleTypeId: string;
@@ -199,7 +200,7 @@ export const CreateRuleForm = (props: CreateRuleFormProps) => {
           }),
         }}
       >
-        <RulePage isEdit={false} isSaving={isSaving} onCancel={onCancel} onSave={onSave} />
+        <RuleFlyout isEdit={false} isSaving={isSaving} onCancel={onCancel} onSave={onSave} />
       </RuleFormStateProvider>
     </div>
   );
diff --git a/packages/response-ops/rule_form/src/edit_rule_form.tsx b/packages/response-ops/rule_form/src/edit_rule_form.tsx
index 392447114ed..41aecd7245a 100644
--- a/packages/response-ops/rule_form/src/edit_rule_form.tsx
+++ b/packages/response-ops/rule_form/src/edit_rule_form.tsx
@@ -26,6 +26,7 @@ import {
 import { RULE_EDIT_ERROR_TEXT, RULE_EDIT_SUCCESS_TEXT } from './translations';
 import { getAvailableRuleTypes, parseRuleCircuitBreakerErrorMessage } from './utils';
 import { DEFAULT_VALID_CONSUMERS, getDefaultFormData } from './constants';
+import { RuleFlyout } from './rule_flyout';
 
 export interface EditRuleFormProps {
   id: string;
@@ -193,7 +194,7 @@ export const EditRuleForm = (props: EditRuleFormProps) => {
           showMustacheAutocompleteSwitch,
         }}
       >
-        <RulePage isEdit={true} isSaving={isSaving} onSave={onSave} onCancel={onCancel} />
+        <RuleFlyout isEdit={true} isSaving={isSaving} onSave={onSave} onCancel={onCancel} />
       </RuleFormStateProvider>
     </div>
   );
```

</details>

### Still Todo

1. Replace all instances of the v1 rule flyout with this new one (it's
used heavily in solutions, not in Stack Management)

### Checklist

- [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/src/platform/packages/shared/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: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-01-22 12:53:08 -06:00
Yuliia Naumenko
c15674f6d1
[Connectors] Allow pre-configured connectors to opt-in to exposing their config by setting exposeConfig (#207654)
Resolves #206433

Added optional `exposeConfig` field to the `preconfiguredActionSchema`
to allow return the configuration for the pre-configured connectors,
which set this value as `true`.
This change is completely backward compatible, because this field is
optional and all the connectors, which don't have the value will remain
to work the same way as before the change (won't return the config).

Changed get and getAll methods of the ActionsClient to reflect opt-in
config based on the set `exposeConfig` value.
2025-01-22 18:51:16 +00:00
Tim Sullivan
9f86582d05
[Reporting] upgrade notes for Reporting feature privilege breaking changes (#207897)
## Summary

Breaking change proposal: https://github.com/elastic/dev/issues/2556

This PR updates the upgrade note documentation to explain the 9.0.0
changes around Reporting access control
2025-01-22 18:40:28 +00:00
Kibana Machine
743bd72e20 skip failing test suite (#207005) 2025-01-23 05:22:13 +11:00
Andrew Macri
0e715b650e
[Security Solution] [Security Assistant] Fixes Security Assistant accessibility (a11y) issues (#207122)
### [Security Solution] [Security Assistant] Fixes Security Assistant accessibility (a11y) issues

This PR fixes the following Security Assistant accessibility (a11y) issues:

- <https://github.com/elastic/kibana/issues/206348> - _The ai assistant settings and actions button is announced wrong_
- <https://github.com/elastic/kibana/issues/206362> - _Close button on View in AI assistant is missing discernible text_
- <https://github.com/elastic/kibana/issues/206875> - _Anonymization button doesn't get announced and doesn't have enough context in the tooltip about when it gets enabled_

### Details

#### [206348](https://github.com/elastic/kibana/issues/206348) - The ai assistant settings and actions button is announced wrong

This issue was resolved by adding an `aria-label` to the assistant settings context menu.

This fix was desk tested using Voiceover, as illustrated by the following screenshots:

**Before:**

![voiceover_before_206348](https://github.com/user-attachments/assets/92106bd9-b651-447e-b5dd-f59323288534)

**After:**

![voiceover_after_206348](https://github.com/user-attachments/assets/da580121-fab1-47e8-ae7b-41fd6d0008ca)

Desk testing: see [206348](https://github.com/elastic/kibana/issues/206348) for reproduction steps

#### [206362](https://github.com/elastic/kibana/issues/206362) - Close button on View in AI assistant is missing discernible text

This issue was resolved by adding an `aria-label` to the assistant close button.

This fix was desk tested using Axe, as illustrated by the following screenshots:

**Before:**

![axe_before_206362](https://github.com/user-attachments/assets/21503311-a9e0-402f-9ee0-333ad6d6171a)

**After:**

![axe_after_206362](https://github.com/user-attachments/assets/54565a48-4285-47f2-b3fd-3709feb9b57c)

Desk testing: see [206362](https://github.com/elastic/kibana/issues/206362) for reproduction steps

#### [206875](https://github.com/elastic/kibana/issues/206875) - Anonymization button doesn't get announced and doesn't have enough context in the tooltip about when it gets enabled

Issue [206875](https://github.com/elastic/kibana/issues/206875) includes the following statement:

> Anonymization button doesn't get announced and doesn't have enough context in the tooltip about when it gets disabled. All it says right now "show anonymized"

The first part of the statement above:

> Anonymization button doesn't get announced

appears to be in reference to when the Anonymization toggle button is disabled. This is unfortunately expected, because screen readers do NOT announce disabled buttons, as described in articles like <https://css-tricks.com/making-disabled-buttons-more-inclusive/>

The second part of the statement above:

> doesn't have enough context in the tooltip about when it gets enabled

is addressed by this PR, though there is still a quirk described in detail below.

In this PR, when a conversation does NOT have replacements, a new (different) tooltip is displayed, as illustrated by the before / after screenshots below:

**Before:**

![empty_before_206875](https://github.com/user-attachments/assets/682f6269-d3db-40ee-877e-e877e9b1ae31)

_Above: Before the fix, the tooltip for the disabled button reads:_ `Show anonymized`

**After:**

![empty_after_206875](https://github.com/user-attachments/assets/1eed6a88-c3d2-424a-abc0-ef45b9ee41d5)

_Above: After the fix, the tooltip for the disabled button reads:_ `This conversation does not include anonymized fields`

Note that there is still a quirk with the button, which is not addressed by this fix:

The current implementation enables the `Show anonymized` button when the conversation has _any_ replacements, regardless of whether or not the replacements are applicable to the rendered conversation. As a result, when replacements are present, but not applicable to the rendered conversation, the user may toggle the enabled button, but will not observe any changes to the rendered conversation.

Alternatively, the replacements could be applied to the conversation before rendering to facilitate a comparison: If the original conversation and applied conversation are identical, the anonymization button should be disabled. If they are the different, the button should be enabled. This alternative was NOT implemented in this PR.

Desk testing: see [206875](https://github.com/elastic/kibana/issues/206875) for reproduction steps
2025-01-22 13:06:54 -05:00
Jon
89b763a499
Upgrade Node.js to 20.18.2 (#207431)
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V20.md
2025-01-22 12:00:14 -06:00
Zacqary Adam Xeper
d6b6fdc9f9
[ResponseOps] Fix editing alerts filter for multi-consumer rule types on serverless (#206848)
## Summary

Fixes #206845

Removes a check to see if a rule has a valid consumer before allowing
alerts filters to be edited in the rule form. This was breaking editing
rules on serverless.

With all relevant rule types having added alerts-as-data functionality,
this check is no longer necessary.

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

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-01-22 17:53:31 +00:00
Kibana Machine
b73cb8a31c skip failing test suite (#156926) 2025-01-23 04:14:38 +11:00
Pierre Gayvallet
c087c984ff
[inference] openAI: fallback to manual token count when not provided in response (#207722)
## Summary

Fix https://github.com/elastic/kibana/issues/207719

For openAI providers not emitting token usage metadata for the stream
API, manually count tokens, so that a tokenCount event is always
emitted.
2025-01-22 18:07:05 +01:00
Kyle Pollich
4073aff617
[Fleet] Remove deprecated ML job property from test fixtures (#207857)
## Summary

Replace `estimated_heap_memory_usage_bytes` property with `expected
model_size_bytes` per deprecation warning. I unzipped the fixture
archives, replaced the property, and rezipped them.

## To test

Add the following to your `serverArgs` block in
`x-pack/test/fleet_api_integration/config.base.ts`

```
{
  name: 'elasticsearch.debug',
  level: 'debug',
  appenders: ['default'],
},
```

Run the EPM FTR tests e.g. 

```
FLEET_PACKAGE_REGISTRY_PORT=12345 yarn test:ftr:server --config x-pack/test/fleet_api_integration/config.epm.ts 

# in another terminal session
FLEET_PACKAGE_REGISTRY_PORT=12345 yarn test:ftr:runner --config x-pack/test/fleet_api_integration/config.epm.ts --grep "Assets tagging"
```

Check that the deprecation notice does not appear in the
`elasticsearch.debug` logs in your console

```
x-pack/test/fleet_api_integration/apis/epm/bulk_get_assets.ts: Deprecated field estimated_heap_memory_usage_bytes used, expected model_size_bytes instead
```
2025-01-22 17:03:55 +00:00
Nathan Reese
05916056cd
[embeddable] make presentation interface names consistent (#205279)
PR cleans up presentation interface names for consistentency
* adds `$` suffix to all observables. For example, `dataLoading` =>
`dataLoading$`
* removes `Panel` naming convention from interface names since an api
may not be a panel, an api may be a dashboard. For example,
`PublisesPanelTitle` => `PublishesTitle`

#### Note to Reviewers
Pay special attention to any place where your application creates an
untyped API. In the example below, there is no typescript violation when
the parent returns `dataLoading` instead of `dataLoading$` since the
parent is not typed as `PublishesDataLoading`. Please check for
instances like these.

```
<ReactEmbeddableRenderer
  getParentApi={() => {
    dataLoading: new BehaviorSubject()
  }}
/>
```

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-01-22 10:46:01 -06:00
Nikita Indik
33145379e5
[Security Solution] Show deprecated bulk endpoints in Upgrade Assistant (#207091)
**Partially addresses: https://github.com/elastic/kibana/issues/193184**

## Summary
We are going to remove our deprecated [bulk action
endpoints](https://github.com/elastic/kibana/issues/193184) in v9.0.0.
They are already unavailable in `main`.

This PR makes deprecated bulk endpoints visible in Upgrade Assistant.
Also, it adds an upgrade guide to the documentation to help users
transition to supported endpoints.

⚠️ This PR temporarily adds the deprecated endpoints back to
`register_routes.ts`. This is needed to make merging changes easier.
I'll open up a follow up PR for `main` that will delete these endpoints
from `9.0`. Will do it once this PR is merged.

## Screenshots
**Deprecated endpoints visible in Upgrade Assistant table**
<img width="1276" alt="Scherm­afbeelding 2025-01-21 om 11 27 53"
src="https://github.com/user-attachments/assets/909c7a20-31d9-46bb-89ec-b409550074e4"
/>

**Clicking on a table item opens a flyout with more info**
<table>
  <tr>
    <td>
<img width="1270" alt="patch_update"
src="https://github.com/user-attachments/assets/8e99459d-1ea1-40c4-936c-23074c02cd6f"
/>
    </td>
    <td>
<img width="1270" alt="post_create"
src="https://github.com/user-attachments/assets/6e734e97-4cf4-4d96-9f8d-51efeb3977ad"
/>
    </td>
  </tr>
  <tr>
    <td>
<img width="1270" alt="put_update"
src="https://github.com/user-attachments/assets/d5b08e16-bf49-475d-81a9-fe5654483e1d"
/>
    </td>
    <td>
<img width="1271" alt="post_delete"
src="https://github.com/user-attachments/assets/ccb74552-50a4-4bdb-b04e-06857caa8f38"
/>
    </td>
  </tr>
</table>

**Clicking on "Learn more" in the flyout takes you to the [upgrade
guide](https://kibana_bk_207091.docs-preview.app.elstc.co/guide/en/kibana/master/breaking-changes-summary.html#breaking-207091)**
<img width="731" alt="upgrade_notes"
src="https://github.com/user-attachments/assets/b8b471ea-98c7-4b07-91db-b1630c382554"
/>


## Testing
Once you send a request to one of the deprecated endpoints it should
show up in Upgrade Assistant at
`<basePath>/app/management/stack/upgrade_assistant/kibana_deprecations`.
Please refer to [this
ticket](https://github.com/elastic/kibana/issues/193184) for the list of
deprecated endpoints.

Work started on: 16-Jan-2025
2025-01-22 16:36:24 +00:00
Nicolas Chaulet
0d32932f6b
[Fleet] Fix migrating enrollment api keys for space awareness (#207847) 2025-01-22 16:24:51 +00:00
Cristina Amico
59e81ee2be
[Fleet] Disallow some egress-specific inputs for agentless integrations (#206074)
Closes https://github.com/elastic/kibana/issues/202091

## Summary

Disallow some egress-specific inputs for agentless integrations. 
- In the policy editor, when Setup technology dropdown is set to
Agentless, hide the rendering of configuration for inputs that have type
matching the blocklist and ensure that these inputs are set to `enabled:
false`
- `tcp, udp, winlog, http_endpoint, filestream` should be disabled when
`supports_agentless: true`
- At the API level, throw an error if attempting to enable a disallowed
input type


### Testing
Simulate agentless env with following setup in `kibana.dev.yml`:
```
xpack.cloud.id: 'anything-to-pass-cloud-validation-checks'
xpack.fleet.agentless.enabled: true
xpack.fleet.agentless.api.url: 'https://localhost:8443'
xpack.fleet.agentless.api.tls.certificate: './config/certs/ess-client.crt'
xpack.fleet.agentless.api.tls.key: './config/certs/ess-client.key'
xpack.fleet.agentless.api.tls.ca: './config/certs/ca.crt'
```
-Apply [this
patch](https://gist.github.com/jen-huang/dfc3e02ceb63976ad54bd1f50c524cb4)
to prevent attempt to create agentless pod (the agentless policy
creation fails without the patch)
- Install the following test integration, that has a bunch of different
inputs to simulate this specific case and is enabled for agentless (it
shows the setup technology as well)

[agentless_package_links-0.0.2.zip](https://github.com/user-attachments/files/18425895/agentless_package_links-0.0.2.zip)

```
curl -XPOST -H 'content-type: application/zip' -H 'kbn-xsrf: true' http://localhost:5601/YOUR_PATH/api/fleet/epm/packages -u elastic:changeme --data-binary @agentless_package_links-0.0.2.zip
```
- Navigate to the integrations page, find the above integration and test
that switching between agent-based/agentless the enabled inputs change
as follows:

<img width="1288" alt="Screenshot 2025-01-15 at 15 30 28"
src="https://github.com/user-attachments/assets/6abd45d7-1bd8-465a-af29-4c34940b32e3"
/>
<img width="1072" alt="Screenshot 2025-01-15 at 15 31 18"
src="https://github.com/user-attachments/assets/6957562f-08a6-403a-8725-1a654e443537"
/>


- Verify that the preview flyout has the correct inputs based on the
selected deployment mode

<img width="863" alt="Screenshot 2025-01-15 at 15 32 19"
src="https://github.com/user-attachments/assets/ceca1f5d-249c-4ee1-9295-6f01ae21fdb4"
/>
<img width="862" alt="Screenshot 2025-01-15 at 15 33 33"
src="https://github.com/user-attachments/assets/f43562d7-633e-4f0a-bfc1-19e89aef7659"
/>


- Verify that the api throws an error when attempting to enable any of
the disallowed types
<img width="1774" alt="Screenshot 2025-01-15 at 15 36 03"
src="https://github.com/user-attachments/assets/2b4d24a3-5adc-4ab2-bbad-83b44d348763"
/>



### Checklist
- [ ] [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
- [ ] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-01-22 17:21:54 +01:00
Antonio
d8e5cbf67f
Fixed an error with missing uids in the cases detail page (#207228)
Fixes #206801

## Summary

When opening the case detail page we retrieve user profile info for the
different case user actions.

If the uid stored in ES is an empty string for any of these user
actions, we get an error that looks like this:

![Screenshot 2025-01-20 at 12 34
54](https://github.com/user-attachments/assets/175c6920-a4fb-4588-9668-1ba7d73f14f3)


### Steps to reproduce/test (thanks @jcger )

1. Create a user with the `system_indices_superuser` role
2. Create a case and assign a user to it
3. Get the ID of the assignment user action from the case above
```
GET .kibana_alerting_cases/_search
{
  "query": {
    "bool": {
      "filter": [
        {
          "term": {
            "type": "cases-user-actions"
          }
        },
        {
          "term": {
            "cases-user-actions.type": "assignees"
          }
        },
        {
          "nested": {
            "path": "references",
            "query": {
              "bool": {
                "filter": [
                  {
                    "term": {
                      "references.type": "cases"
                    }
                  },
                  {
                    "term": {
                      "references.id": "<case_id>"
                    }
                  }
                ]
              }
            }
          }
        }
      ]
    }
  }
}
```
4. Manually set the `uid` of the assignee to `""`
```
POST .kibana_alerting_cases/_update/<cases-user-actions-id>
{
  "script": {
    "source": """
        ctx._source["cases-user-actions"].payload.assignees[0].uid = "";
    """
  }
}
```

After this PR the popup should **not** appear anymore.
2025-01-22 16:15:43 +00:00
Thomas Neirynck
27a26fae4b
[Data] Take into account failure-store selector (#207438)
## Summary

Closes https://github.com/elastic/kibana/issues/205109

Update CCS check so it doesn't validate failure-store delimiters.

### Checklist

Check the PR satisfies following conditions. 

Reviewers should verify this PR satisfies this list as well.

- [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/src/platform/packages/shared/kbn-i18n/README.md)
- [x]
[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] 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)
- [x] This was checked for breaking HTTP API changes, and any breaking
changes have been approved by the breaking-change committee. The
`release_note:breaking` label should be applied in these situations.
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [x] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: Lukas Olson <olson.lukas@gmail.com>
2025-01-22 11:09:57 -05:00
Ievgen Sorokopud
cde76c1e2d
[SIEM migrations] Fix duplicated translations issue (#207845)
## Summary

[Internal link](https://github.com/elastic/security-team/issues/10820)
to the feature details

This PR fixes the duplicated translations issue introduced in
https://github.com/elastic/kibana/pull/207242

> [!NOTE]  
> This feature needs `siemMigrationsEnabled` experimental flag enabled
to work.
2025-01-22 16:08:03 +00:00
Giorgos Bamparopoulos
368475e8e5
[One Discover] Display stacktrace in the logs overview tab (#204521)
## 📓 Summary
Adds a new section to the overview tab in the log details flyout in
Discover to display stacktrace information for logs and exceptions.

In a follow-up, the stacktrace could be moved to a new tab in the log
details flyout and actions can be added to the stacktrace (and quality)
icons in the document table to open the relevant sections in the flyout.

Closes https://github.com/elastic/kibana/issues/190460

### APM - Log stacktrace (library frames)
<img width="1470" alt="image"
src="https://github.com/user-attachments/assets/8991f882-d329-4bc5-aa37-424576bcee72"
/>

### APM - Exception (with cause)
<img width="1476" alt="image"
src="https://github.com/user-attachments/assets/cfbf24a7-6f82-48f1-b275-5aac977411ac"
/>

### APM - Exception (simple stacktrace)
<img width="1474" alt="image"
src="https://github.com/user-attachments/assets/fc0306c4-5fcd-4b74-bb0d-c1784a48d677"
/>

### Apache Tomcat Integration (Catalina) - Stacktrace
<img width="1472" alt="image"
src="https://github.com/user-attachments/assets/281f1822-faea-4e2d-9515-c11a9ee12f50"
/>

## 📝 Notes for reviewers
- The `@kbn/apm-types` package was marked as platform / shared as it's
being used by the
[unified_doc_viewer](https://github.com/elastic/kibana/blob/main/src/plugins/unified_doc_viewer/kibana.jsonc)
- The code used to render stacktraces in APM was moved into a new
`@kbn/event-stacktrace` package as it is reused in the
`unified_doc_viewer`
- The code used to render metadata table in APM was moved into a new
`@kbn/key-value-metadata-table` package

## 🧪 Testing instructions
The deployed environments have sample logs that can be used (time range:
Jan 1, 2025 - now). For a local setup, please follow the instructions
below:

1. Ingest sample logs with stacktraces
([gist](https://gist.github.com/gbamparop/0da21ca7f65b24c4a9c071ce9e9b97b0)).
Please note that these are test data and some fields that are not used
by stacktraces might not be consistent
2. View relevant logs in Discover (Query: `service.name: "synth-node-0"
OR apache_tomcat :*`, Time range: Jan 1, 2025 - now)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-01-22 18:06:14 +02:00
Alejandro Fernández Haro
cf4d79c862
[HTTP] Revert postValidate isPublicAccess (#207829) 2025-01-22 15:59:36 +00:00
Joe Reuter
5585ac46c6
🌊 Fix MKI tests (#207397)
Closes https://github.com/elastic/kibana/issues/207310

The deployment agnostic tests were not running properly against MKI
because they directly mess with system indices.

This PR fixes this by removing these parts of the streams tests as they
are anyway tested already by the separate storage adapter tests.

It also extends the behavior of the "disable" streams API endpoint to
also wipe the asset links and stream definitions for classic streams to
leave a clean state. To do this, I extended the storage adapter by a
"clean" function, which deletes the index templates and all backing
indices.
2025-01-22 15:59:02 +00:00
Giorgos Bamparopoulos
8580f4f4f1
[Observability Onboarding] Update values.yml file URL for the OTel K8s flow (#205694)
## 📓 Summary
🛑 **Don't merge before the 8.17.1 release as the file doesn't exist in
[v8.17.0](https://github.com/elastic/elastic-agent/tree/v8.17.0/deploy/helm/edot-collector/kube-stack),
as the [backport PR](https://github.com/elastic/elastic-agent/pull/6267)
was merged the day of the release.**

Updates the URL of the `values.yml` file for the OTel onboarding
Kubernetes flow using the relevant release tag.

The file is available in the `elastic-agent` repo under the
[deploy/helm/edot-collector/kube-stack/values.yaml](https://github.com/elastic/elastic-agent/blob/v8.16.2/deploy/helm/edot-collector/kube-stack/values.yaml)
path.

### 8.16 branch
<img width="1156" alt="image"
src="https://github.com/user-attachments/assets/b1e3848b-7d1a-4d50-9968-d124859a054f"
/>

### main branch
<img width="1152" alt="image"
src="https://github.com/user-attachments/assets/e0b33a08-405d-475d-af48-0bbc93abfa27"
/>

Closes https://github.com/elastic/kibana/issues/197644

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-01-22 17:41:28 +02:00
Dario Gieselaar
8d4a70c5e5
Refactor models (#206930)
Refactors models to make it more clear what our data model is internally
and what our API responses are. Also some small changes to make it more
elasticsearch-y:

- isSchema variants now are based on specific type narrowing instead of
from any > type, as the latter only gives runtime safety, but does not
add much in terms of type safety
- validation is now entirely encapsulated in the type, removed
additional checks such as `isCompleteCondition`
- the stored document puts all stream properties top level (currently
only `ingest`, instead of `stream.ingest`)
- `condition` is renamed to `if`, and required everywhere
- `always` and `never` conditions were added
- `grok` and `dissect` processors are now similar to ES, where the
condition is a part of the processor config
- `GET /api/streams/{id}` returns `{ stream: ..., dashboards: ..., ...
}` instead of `{ ingest: ...., dashboards: ..., ... }`
- `PUT /api/streams/{id}` now requires `dashboards`, and `stream` is a
top-level property
- `PUT /api/streams/{id}/_ingest` was added to allow consumers to only
update the stream, and not its assets
- there are some legacy definitions (in `legacy.ts`) to minimize the
amount of changes in the UI, this still needs to happen at some point
but not in this PR

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2025-01-22 15:03:08 +00:00
Georgiana-Andreea Onoleață
f4ff699a82
[ResponseOps][Cases]Fix unit tests for React@18 (#207072)
Closes https://github.com/elastic/kibana/issues/206954

## Summary

- fixed

-
[[job]](https://buildkite.com/elastic/kibana-pull-request/builds/267663#01946e9c-d647-4af9-9e61-586deed1bcfb)
[[logs]](01946ec2-e5bc-40be-98f8-d9fec8226ede)
Jest Tests / ConnectorForm calls onChange when the form is invalid
2025-01-22 16:48:32 +02:00
Julia Bardi
dd37080b16
[Fleet] hide auto upgrade UI elements if feature flag is disabled (#207714)
## Summary

Follow up after https://github.com/elastic/kibana/pull/206955

Hide auto upgrade feature when feature flag is disabled.

To test:
- verify that UI elements are not visible by default (tour, Manage
auto-upgrade agents action, Agent policy details header)
- enable FF in `kibana.dev.yml` and verify that UI elements are visible
  - `xpack.fleet.enableExperimental: ['enableAutomaticAgentUpgrades']`

Feature flag off (default):

<img width="1278" alt="image"
src="https://github.com/user-attachments/assets/c2cb7734-ec04-47fc-b719-69fe73218df1"
/>
<img width="1271" alt="image"
src="https://github.com/user-attachments/assets/f9f048ff-468a-4485-9d79-67d95925dade"
/>

Feature flag on:

<img width="1278" alt="image"
src="https://github.com/user-attachments/assets/2c754487-cd5d-42fc-b346-e817150c4486"
/>
<img width="1278" alt="image"
src="https://github.com/user-attachments/assets/3eacd4bd-1fa8-44ee-a8aa-df387701e4be"
/>
2025-01-22 15:20:38 +01:00
Julia Bardi
9800147681
[Fleet] Fix UI error when agent goes to orphaned state (#207746)
## Summary

Closes https://github.com/elastic/kibana/issues/207017

It seems that when the orphaned agent service is restarted, it briefly
has a component state string, instead of array, that's why the error.
The fix checks that the components is an array before calling map.

To verify:
1. Enroll an agent to an agent policy with endpoint integration.
2. Stop agent service so that agent gets into orphaned state.
3. Now restart the service and observe that the error
`_hit$_source4.components.map is not a function` no longer appears.

<img width="1531" alt="image"
src="https://github.com/user-attachments/assets/c9a957d7-a0d3-4831-90f9-a57479193ee0"
/>
<img width="1530" alt="image"
src="https://github.com/user-attachments/assets/c0aa62f0-708b-463e-9184-01d8641c8f21"
/>
2025-01-22 15:20:03 +01:00
Nicolas Chaulet
24bab86aef
[Fleet] Do not reassign actions space (#207381) 2025-01-22 08:24:20 -05:00
Kevin Delemme
2481edcc28
Fix test and remove skip MKI tag (#207574)
Related to https://github.com/elastic/kibana/issues/207354

## Summary

Fix test and unskip on MKI
2025-01-22 08:18:04 -05:00
Elena Shostak
8f8ed8716f
[Authz] Explicitly added superuser privileges for _invalidate route (#207366)
## Summary

There was no `sessionManagement` privilege registered, so the route was
available only for superusers or users with equivalent privileges.
Explicitly added `superuser` privileges for
`/api/security/session/_invalidate` route.


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

__Related: https://github.com/elastic/kibana/issues/198716__
2025-01-22 14:12:32 +01:00
Ido Cohen
c932cfa562
Universal entity installation 2025-01-22 15:10:52 +02:00
Sid
26350ff3ba
[Sessions] Reindexing the .kibana_security_session_1 index to the 8.x format. (#204097)
Closes https://github.com/elastic/kibana/issues/200603


## Summary

Reindexes the Kibana Security session system index to the 8.x format to
support 9.0 readiness.

### Release note
Creates Kibana Security session index to only if the
`kibana_security_session_1` index or the reindexed version do not exist.

### Notes


### How to test

For this test, you'll need at least 3 copies of Kibana cloned locally.
One each on 7.17, 8.x and main - ensuring you've run `yarn kbn
bootstrap` on each of them.


Step 0.  Verify on the PR branch
-----
- Start ES as `yarn es snapshot --license=trial`
- Start kibana `yarn start --no-base-path`
- Login to kibana in a private browsing window
- Navigate to dev tools and run
```
GET .kibana_security_session/_alias
```
- You should see 
```
{
  ".kibana_security_session_1": {
    "aliases": {
      ".kibana_security_session": {
        "is_write_index": true,
        "is_hidden": true
      }
    }
  }
}
```
This indicates that there were no aliases/index present and the new
index was created.

Step 1. On 7.17
-----
- Run ES with `yarn es snapshot --license=trial -E
path.data=/tmp/esdata`
- Run kibana
- Login with the `elastic` user
- Navigate to dev tools and run the following query
```
GET .kibana_security_session_1/_search
{
  "query": {
    "match_all": {}
  }
}
```
- You should see your current session being returned as the result for
this query
- You can now shut down ES and kibana.


Step 2. On 8.x
-----
- Run ES with `yarn es snapshot --license=trial -E
path.data=/tmp/esdata` <--- point to the same folder as the previous run
- Run kibana, open a private browser window and login.
- Navigate to Kibana upgrade assistant and Migrate system indices and
wait for it to run.
- Now in Dev tools, run the same query. You should see two sessions. 
- One with the idleSessionTimeout returned as null and the other one
containing a value - indicating one was created on 7.x and the other in
8.x
- Make a backup of the data folder `cp -r /tmp/esdata /tmp/esdatabkp`

Step 3(OPTIONAL). On main (without the changes in this PR)
-----
- Run ES with `yarn es snapshot --license=trial -E
path.data=/tmp/esdata`
- This should throw an error 


Step 4. On 8.x
-----
- First use the backup for the path `cp -r /tmp/esdatabkp /tmp/esdata2`
- Start ES only (do not run Kibana yet) by pointing to the copy: `yarn
es snapshot --license=trial -E path.data=/tmp/esdata2`
- ES should start up and you need to delete 1 index and 2 datastreams
using the ES APIs and any method you prefer. For your convenience, you
can use the same script as mine:
```ts
import axios from 'axios';

const clearIndexAndDatastream = async () => {
  {
    const res = await axios.delete(
      "http://localhost:9200/.kibana-event-log-7.17.28-000001",
      {
        headers: {
          Authorization: "Basic ZWxhc3RpYzpjaGFuZ2VtZQ==",
          accept: "*/*",
          "Content-Type": "application/json",
          "Kbn-Xsrf": "true",
        },
      }
    );
    console.log("deleted index:", JSON.stringify(res.data));
  }

  {
    const res = await axios.delete(
      "http://localhost:9200/_data_stream/ilm-history-5",
      {
        headers: {
          Authorization: "Basic ZWxhc3RpYzpjaGFuZ2VtZQ==",
          accept: "*/*",
          "Content-Type": "application/json",
          "Kbn-Xsrf": "true",
        },
      }
    );
    console.log("deleted ds1:", JSON.stringify(res.data));
  }
  {
    const res = await axios.delete(
      "http://localhost:9200/_data_stream/.logs-deprecation.elasticsearch-default",
      {
        headers: {
          Authorization: "Basic ZWxhc3RpYzpjaGFuZ2VtZQ==",
          accept: "*/*",
          "Content-Type": "application/json",
          "Kbn-Xsrf": "true",
        },
      }
    );
    console.log("deleted ds2:", JSON.stringify(res.data));
  }
};

clearIndexAndDatastream();
```
You should see the result as:

```
deleted index: {"acknowledged":true}
deleted ds1: {"acknowledged":true}
deleted ds2: {"acknowledged":true}
```
- Now login to Kibana in a private browsing window and navigate to
Upgrade assistant and run the migration.
- Navigating to devtools and running the same query as above will show
you three results. One with no idleTimeout and 2 with timeouts (One on
7.x and two on 8.x format respectively)
```
GET .kibana_security_session_1/_search
{
  "query": {
    "match_all": {}
  }
}
```
- You can now shut ES and kibana at this point. 

Step 5. On the branch of this PR
-----
- Run ES with `yarn es snapshot --license=trial -E
path.data=/tmp/esdata2`
- Run Kibana and login using a private window. 
- Navigating to dev tools and run:
```
GET .kibana_security_session/_alias
```
To show a result as:
```
{
  ".kibana_security_session_1-reindexed-for-9": {
    "aliases": {
      ".kibana_security_session": {
        "is_hidden": true
      },
      ".kibana_security_session_1": {
        "is_hidden": true
      }
    }
  }
}
```
This indicates that no new index was created and we are using the
reindexed version from 8.x.

- You should also run the query to check for sessions:
```
GET .kibana_security_session_1/_search
{
  "query": {
    "match_all": {}
  }
}
```
- This should return 4 sessions in the results

This confirms that the session was re-indexed correctly using the right
aliases.



### Checklist

Check the PR satisfies following conditions. 

Reviewers should verify this PR satisfies this list as well.

- [ ] [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
- [ ] [Flaky Test
Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was
used on any tests changed
- [ ] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

### Identify risks

Does this PR introduce any risks? For example, consider risks like hard
to test bugs, performance regression, potential of data loss.

Describe the risk, its severity, and mitigation for each identified
risk. Invite stakeholders and evaluate how to proceed before merging.

- [ ] [See some risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx)
- [ ] ...

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2025-01-22 14:03:42 +01:00
Ievgen Sorokopud
3be8acd964
[Rules migration] Implement workflow tour - Setup Guide (#11384) (#207242)
## Summary

[Internal link](https://github.com/elastic/security-team/issues/10820)
to the feature details

This PR adds the SIEM Migration setup tour guide on the main landing
page. [Figma
link](https://www.figma.com/design/BD9GZZz6y8pfSbubAt5H2W/%5B8.18%5D-GenAI-Powered-SIEM-Migration%3A-Rule-translation?node-id=2652-244526&t=WmkBy29xrzl5mN7G-4)


https://github.com/user-attachments/assets/680e3bb6-a0af-43dc-99f8-30e32badf367

Delete `securitySolution.siemMigrations.setupGuide.v8.18` in the local
storage to reset the tour.

> [!NOTE]  
> This feature needs `siemMigrationsEnabled` experimental flag enabled
to work.
2025-01-22 14:01:49 +01:00
Shahzad
9e284537d1
[Synthetics] Update cards colors !! (#207200)
## Summary

Update cards colors !!

### After
<img width="1725" alt="image"
src="https://github.com/user-attachments/assets/cea66812-a96d-4bc6-b013-c4ee84813eae"
/>

### Before
<img width="1728" alt="image"
src="https://github.com/user-attachments/assets/1dc6c077-d6df-4f8a-8f23-6783e39c5739"
/>
2025-01-22 13:48:09 +01:00
Søren Louv-Jansen
422b092e51
Increase timeout for KB status endpoint test (#207715)
Closes https://github.com/elastic/kibana/issues/207733

Addresses build failures like
https://buildkite.com/elastic/appex-qa-serverless-kibana-ftr-tests/builds/4033
by increasing the timeout from 2 min to 5 min

This is the test that was failing
> 1) Serverless Observability - Deployment-agnostic API integration
tests
--
  | │       observability AI Assistant
  | │         /internal/observability_ai_assistant/kb/status
  | │ "before each" hook for "returns correct status after knowledge
base is setup":
  | │
  | │      Error: retry.try reached timeout 120000 ms
  | │ Error: expected false to equal true
  | │     at Assertion.assert (expect.js💯11)
  | │     at Assertion.apply (expect.js:227:8)
  | │     at Assertion.be (expect.js:69:22)
  | │     at helpers.ts:64:31
  | │ at processTicksAndRejections
(node:internal/process/task_queues:95:5)
  | │     at runAttempt (retry_for_success.ts:30:15)
  | │     at retryForSuccess (retry_for_success.ts:103:21)
  | │     at RetryService.try (retry.ts:52:12)
  | │     at waitForKnowledgeBaseReady (helpers.ts:58:3)
  | │     at Context.<anonymous> (knowledge_base_status.spec.ts:31:7)
  | │     at Object.apply (wrap_function.js:74:16)
  | │       at onFailure (retry_for_success.ts:18:9)
  | │       at retryForSuccess (retry_for_success.ts:86:7)
  | │       at RetryService.try (retry.ts:52:12)
  | │       at waitForKnowledgeBaseReady (helpers.ts:58:3)
  | │       at Context.<anonymous> (knowledge_base_status.spec.ts:31:7)
  | │       at Object.apply (wrap_function.js:74:16)
2025-01-22 13:42:40 +01:00
elastic-renovate-prod[bot]
71b34a919d
Update @elastic/ml-ui dependencies (main) (#204210)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[@types/he](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/he)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/he))
| devDependencies | minor | [`^1.1.1` ->
`^1.2.3`](https://renovatebot.com/diffs/npm/@types%2fhe/1.1.1/1.2.3) |
|
[react-popper-tooltip](https://togithub.com/mohsinulhaq/react-popper-tooltip)
| dependencies | major | [`^3.1.1` ->
`^4.4.2`](https://renovatebot.com/diffs/npm/react-popper-tooltip/3.1.1/4.4.2)
|

---

### Release Notes

<details>
<summary>mohsinulhaq/react-popper-tooltip
(react-popper-tooltip)</summary>

###
[`v4.4.2`](https://togithub.com/mohsinulhaq/react-popper-tooltip/releases/tag/v4.4.2):
Fix missing hover check in interactive mode

[Compare
Source](https://togithub.com/mohsinulhaq/react-popper-tooltip/compare/v4.4.1...v4.4.2)

Thanks, [@&#8203;cgsdev0](https://togithub.com/cgsdev0)
[https://github.com/mohsinulhaq/react-popper-tooltip/pull/156](https://togithub.com/mohsinulhaq/react-popper-tooltip/pull/156)

###
[`v4.4.1`](https://togithub.com/mohsinulhaq/react-popper-tooltip/releases/tag/v4.4.1):
Fix unintentional dependency change

[Compare
Source](https://togithub.com/mohsinulhaq/react-popper-tooltip/compare/v4.4.0...v4.4.1)

Thanks [@&#8203;JohnDaly](https://togithub.com/JohnDaly)

###
[`v4.4.0`](https://togithub.com/mohsinulhaq/react-popper-tooltip/releases/tag/v4.4.0):
Add double click trigger, improve styles declaration, ability to change
default tooltip text color


[https://github.com/mohsinulhaq/react-popper-tooltip/pull/148](https://togithub.com/mohsinulhaq/react-popper-tooltip/pull/148)

[https://github.com/mohsinulhaq/react-popper-tooltip/pull/149](https://togithub.com/mohsinulhaq/react-popper-tooltip/pull/149)

[https://github.com/mohsinulhaq/react-popper-tooltip/pull/154](https://togithub.com/mohsinulhaq/react-popper-tooltip/pull/154)

###
[`v4.3.0`](https://togithub.com/mohsinulhaq/react-popper-tooltip/releases/tag/v4.3.0):
Add Shadow DOM support

[Compare
Source](https://togithub.com/mohsinulhaq/react-popper-tooltip/compare/v4.2.0...v4.3.0)

As pointed out by
[https://github.com/mohsinulhaq/react-popper-tooltip/issues/133](https://togithub.com/mohsinulhaq/react-popper-tooltip/issues/133)
(thanks [@&#8203;shovalk](https://togithub.com/shovalk)), interactions
with the tooltip when rendered using Shadow DOM wasn't working properly.
This release adds support for that by using
[Event.composedPath](https://developer.mozilla.org/en-US/docs/Web/API/Event/composedPath)
to get event target, with `event.target` as fallback for IE11.

###
[`v4.2.0`](https://togithub.com/mohsinulhaq/react-popper-tooltip/releases/tag/v4.2.0):
Revert to mouseenter/mouseleave hover mechanic

[Compare
Source](https://togithub.com/mohsinulhaq/react-popper-tooltip/compare/v4.1.2...v4.2.0)

`v4.1.0` introduced a new way of handling hover trigger, which had a
couple of improvements over the old one, but unintentionally led to
another set of serious issues.
We have now reverted to the older hover mechanic while also solving the
older problems by setting `pointer-events: none` on the arrow as well as
the non-interactive tooltip.

###
[`v4.1.2`](https://togithub.com/mohsinulhaq/react-popper-tooltip/releases/tag/v4.1.2):
Hover trigger bug fixes introduced in v4.1.0 🐛

[Compare
Source](https://togithub.com/mohsinulhaq/react-popper-tooltip/compare/v4.1.1...v4.1.2)

Fixes:
[https://github.com/mohsinulhaq/react-popper-tooltip/issues/117](https://togithub.com/mohsinulhaq/react-popper-tooltip/issues/117)
&
[https://github.com/mohsinulhaq/react-popper-tooltip/issues/118](https://togithub.com/mohsinulhaq/react-popper-tooltip/issues/118)

###
[`v4.1.1`](https://togithub.com/mohsinulhaq/react-popper-tooltip/compare/v4.1.0...v4.1.1)

[Compare
Source](https://togithub.com/mohsinulhaq/react-popper-tooltip/compare/v4.1.0...v4.1.1)

###
[`v4.1.0`](https://togithub.com/mohsinulhaq/react-popper-tooltip/releases/tag/v4.1.0):
An improved and more resilient hover trigger!

Thanks to the contribution by
[@&#8203;czabaj](https://togithub.com/czabaj) 👑, the hover trigger is
now improved quite a bit, accounting for the gap between the trigger and
the tooltip and also fixing a glitch in cases where tooltip and trigger
overlap.

###
[`v4.0.0`](https://togithub.com/mohsinulhaq/react-popper-tooltip/releases/tag/v4.0.0):
usePopperTooltip hook! 🪝

[Compare
Source](https://togithub.com/mohsinulhaq/react-popper-tooltip/compare/v3.1.1...v4.0.0)

### Release notes

With **react-popper**, used under the hood of **react-popper-tooltip**,
introducing the `usePopper` hook in the last
major update, we're now releasing the hook version of our own library as
well - `usePopperTooltip`. The hook provides many new features and
flexibility
and allows for implementations not possible before.

#### Breaking changes

This release onwards, the hook is the only way of creating tooltips.
This version drops the support of
the `TooltipTrigger` render prop component. If you want to upgrade and
still keep using render prop API,
refer to our example section to implement the legacy API with our new
hook.

We wrote this version from scratch. Although thoroughly tested, it can
still possibly contain some regressions. Please,
report any problems using the [issues
link](https://togithub.com/mohsinulhaq/react-popper-tooltip/issues).

- For the sake of consistency, we made some changes to the props names.

    -   `defaultTooltipShown` is renamed to `defaultVisible`
    -   `tooltipShown` is renamed to `visible`
    -   `onVisibilityChange` is renamed to `onVisibleChange`
- `closeOnReferenceHidden` is renamed to `closeOnTriggerHidden` and the
default value changed from `true` to `false`

- The default placement is now `bottom` instead of `right`, in line with
react-popper defaults.

- The string value `"none"` for the prop `trigger` is replaced with
`null`.

-   The default CSS has a few positioning and naming changes.

- Previously, when a user hovered the tooltip, it stayed open to allow
the user to interact with the tooltip's content.
Now the tooltip closes as soon as the cursor leaves the trigger element.
The new option `interactive` has been added to
    configure this behavior.

-   `getTriggerProps` and `arrowRef` are no longer needed.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://togithub.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjUuMSIsInVwZGF0ZWRJblZlciI6IjM3LjQyNS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyI6bWwiLCJUZWFtOk1MIiwiYmFja3BvcnQ6YWxsLW9wZW4iLCJyZWxlYXNlX25vdGU6c2tpcCJdfQ==-->

Co-authored-by: elastic-renovate-prod[bot] <174716857+elastic-renovate-prod[bot]@users.noreply.github.com>
2025-01-22 11:51:31 +00:00
jennypavlova
10519c2d4a
[Inventory v2][APM] Remove redundant synthtrace scenario (#207716)
## Summary

As discussed in
https://github.com/elastic/kibana/pull/207305#discussion_r1924280917 we
can use `simple_logs` scenario for the same case instead of the new
`logs_only` so this PR removes it.
2025-01-22 11:38:15 +00:00
Vadim Kibana
36efc59213
[ES|QL] STATS command field WHERE expression support (#206593)
## Summary

Closes https://github.com/elastic/kibana/issues/195363

Adds support for ` ... WHERE ... ` expressions inside `STATS` command.
Like

```
FROM index | STATS a WHERE b
```


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

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
2025-01-22 11:32:02 +00:00