Commit graph

3019 commits

Author SHA1 Message Date
Trevor Pierce
aa1d266939
Upgrade EUI to v81.0.0 (#158330)
## Summary

`@elastic/eui@80.0.0`  `@elastic/eui@81.0.0`

---

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

- Added ability to set `options.checked` to "mixed" in `EuiSelectable`
([#6774](https://github.com/elastic/eui/pull/6774))

**Bug fixes**

- Portalled components (e.g. `EuiPopover`, `EuiModal`, `EuiFlyout`) will
correctly inherit text color from its nearest `EuiThemeProvider` parent.
`<EuiText color="default">` is no longer needed.
([#6775](https://github.com/elastic/eui/pull/6775))

**Breaking changes**

- `EuiSelectable` no longer renders a `data-test-selected` attribute on
its list items. Use the `aria-checked` property instead
([#6774](https://github.com/elastic/eui/pull/6774))
- Nested `EuiThemeProvider`s now render a wrapping `<span>` element in
order to correctly set the inherited text `color` of all descendants.
`<EuiText color="default">` is no longer needed.
([#6775](https://github.com/elastic/eui/pull/6775))

---------

Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Constance Chen <constance.chen@elastic.co>
2023-05-31 11:51:10 -07:00
Rachel Shen
3746b73f5c
[Reporting] Initial Export types plugin (#158479)
## Summary

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

- [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: Tim Sullivan <tsullivan@users.noreply.github.com>
2023-05-31 07:09:23 -07:00
Walter Rafelsberger
9febf5de21
[ML] Package @kbn/ml-data-frame-analytics-utils (#155976)
Creates Package `@kbn/ml-data-frame-analytics-utils` via `node
scripts/generate package @kbn/ml-data-frame-analytics-utils --web --dir
./x-pack/packages/ml/data_frame_analytics_utils`.

Moves some of the constants, types and utilities for Data Frame
Analytics to its own package. This is in preparation to move our data
grid related code to a package too. Since this code for now is only used
by our team I didn't do any renaming related to for example consistent
prefixing, this should be revisited in a follow up. Another opportunity
for a follow up might be a clean up of the types and check which ones
can be replaced by types from `estypes`.
2023-05-31 13:54:50 +02:00
Julia Rechkunova
8d399fe3aa
[UnifiedFieldList] Remove redundant server routes. Create new example plugin for unified field list components and migrate tests. (#158377)
- Closes https://github.com/elastic/kibana/issues/147885
- Closes https://github.com/elastic/kibana/issues/157109

## Summary

**Before:**

Unified Field List plugin has internal routes (wrappers for client code)
which exist only to run api functional tests against them:
 - `/api/unified_field_list/existing_fields/{dataViewId}`
 - `/api/unified_field_list/field_stats`

Client code does not call these routes directly. So there is no reason
in keeping and versioning them.

**After:**
- Internal routes are removed 
- A new "Unified Field List Examples" page was created
http://localhost:5601/app/unifiedFieldListExamples
- API functional tests (which used the routes) were converted to
functional tests against this new example page
- Created a new `unifiedFieldList` page object which is used now in
functional tests (methods are extracted from existing `discover` page
object).

**For testing:**

Steps:
1. Run Kibana with examples: `yarn start --run-examples` 
2. Install sample data
3. And navigate to Developer Examples > Unified Field List Examples
page.

![May-26-2023
13-24-03](5a2149f7-beb8-40a5-b7d5-9eeaabfd42ca)


### 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>
2023-05-31 13:25:47 +02:00
Konrad Szwarc
c9658bf238
[Security Solution] ~200 ways to decrease flakiness in Cypress (#157387)
This PR addresses Cypress parallelisation in Security Solution scope. It
is a first step in improving e2e tests reliability and gives us a solid
foundation for further work on flakiness and run times. With this PR
each CI job starts 3 instances of ES, kibana and Cypress runner in
isolation.

Other issues addressed in this PR: 
- Use click() instead of trigger('click') in all Cypress tests.
- Use testIsolation in all Cypress tests.
- login before each test to ensure that the correct user is always
logged in. Also, with test isolation enabled, login should be required
before each test.
- use visit() instead of cy.visit() in some cases so that tests wait for
the page to fully load before executing.
- Cypress e2e tests are no longer compatible with Firefox (or any
non-Chromium based browser) due to using cypress-real-events
- Removes uses of cypress-pipe. Tests that used cypress-pipe in order to
retry click events will no longer retry click events.
- Fixes an error related to test files being overwritten by Webpack file
processing

---------

Co-authored-by: Patryk Kopycinski <contact@patrykkopycinski.com>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-30 17:40:18 +02:00
Yan Savitski
815fddb9f0
[Search Application] Use ES JS client instead of Transport (#158446)
- ✔️ Update es client version
- ✔️ Replace transport api to es client
- ✔️ Update tests
- ✔️ Fix TS issues
2023-05-30 05:16:40 -07:00
Dzmitry Lemechko
0f8b3595f1
update geckodriver to 4.0.0 (#158384)
## Summary

Updating geckodriver dependency to use the latest 0.33.0 driver. Module
was reworked, I removed import from webdriver.ts
2023-05-26 10:24:19 +02:00
Brad White
0c3ca366a1
Add build_date to kbn:api/status (#157905)
## Summary

Adds build date to `GET kbn:api/status` similar to ES. Example output
running locally:

```json
{
  "name": "ES-DMVD5M3",
  "uuid": "545ba70c-063e-449b-af21-6c8e7b30f77e",
  "version": {
    "number": "8.9.0",
    "build_hash": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "build_number": 9007199254740991,
    "build_snapshot": false,
    "build_date": "2023-05-15T23:12:09.000Z"
  },
  ...rest
}
```


### Checklist

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


## Release Note

The status endpoint now returns the build date alongside other build
information.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-25 10:21:47 -07:00
Dima Arnautov
c5eee26671
[ML] Apply theme based on the User Profile settings (#158258)
## Summary

With the release of Per User Dark Mode, code should no longer rely on
calling `uiSettings` to determine which theme Kibana is displayed with.

With theme settings now configurable from User Profiles and Adv.
Settings, the code that was calling uiSettings to determine the Kibana
theme will not take into account which theme is currently being
displayed.


Applies an appropriate EUI theme based on the profile settings. In
particular for the following components:
- Anomaly swim lane (Fixes #158155 )
- Job tree map view (Fixes
https://github.com/elastic/kibana/issues/158304)
- Charts-related theme settings, e.g. the Single Metric Viewer
2023-05-25 11:57:48 +02:00
Patryk Kopyciński
2f80cb38af
Bump dpdm (#158153)
## Summary

Bump dpdm
2023-05-24 22:06:13 +02:00
renovate[bot]
301135bff8
Update dependency elastic-apm-node to ^3.46.0 (main) (#158211)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-23 09:23:20 +02:00
Stratoula Kalafateli
0975ebabd1
[Text based languages] Creates editor reusable component (#158008)
## Summary

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

This PR:
- Moves the editor from unified-search to a standalone package
- The editor has now a core ui settings dependency but is going to have
an expressions dependency too when merged with the ESQL branch
- Adds a new plugin (text-based-languages) which is used to pass the
dependencies on the package. The user can either use this plugin without
giving any dependencies or use the package with passing the dependecies
on the KibanaContextProvider.
- Adds storybook for the editor (I used the mdx stories as we did on the
random sampling package)

<img width="1668" alt="image"
src="763a3112-1ae5-49bb-81f3-acd02892e402">


### Checklist

- [x]
[Documentation](https://www.elastic.co/guide/en/kibana/master/development-documentation.html)
was added for features that require explanation or tutorials

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-22 14:27:38 +03:00
Tomasz Kajtoch
b754a2df75
Upgrade EUI to v80.0.0 (#157939)
## Summary

`@elastic/eui@79.0.1`  `@elastic/eui@80.0.0`

---

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

- Improved the contrast ratio of meta labels within
`EuiSelectableTemplateSitewide` to meet WCAG AA guidelines.
([#6761](https://github.com/elastic/eui/pull/6761))
- Added `vulnerabilityManagementApp` glyph to `EuiIcon`
([#6762](https://github.com/elastic/eui/pull/6762))
- Added `logoVulnerabilityManagement` icon to `EuiIcon`
([#6763](https://github.com/elastic/eui/pull/6763))
- Added `onPanelChange` callback to `EuiContextMenu` to provide consumer
access to `panelId` and `direction`.
([#6767](https://github.com/elastic/eui/pull/6767))

**Bug fixes**

- Fixed `EuiComboBox` so `append` and `prepend` icon buttons are full
height and vertically centered.
([#6766](https://github.com/elastic/eui/pull/6766))
- Improved the uniformity of dropdown components by hiding the dropdown
icon of disabled `EuiComboBox`s.
([#6768](https://github.com/elastic/eui/pull/6768))

**Breaking changes**

- `EuiFieldNumber` now defaults the `step` prop to `"any"`
([#6760](https://github.com/elastic/eui/pull/6760))
- EUI now globally resets a default Chromium browser style that was
decreasing the opacity of disabled `select` items.
([#6768](https://github.com/elastic/eui/pull/6768))

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-05-18 18:52:40 +02:00
Jeramy Soucy
b140e089a2
Upgrade xml2js (0.4.22 -> 0.5.0) (#156737)
## Summary
Updates the xml2js package dependency from v0.4.22 to v0.5.0.
2023-05-17 16:05:38 -04:00
Nathan Reese
556ba07452
[maps] fix double encoding MVT request body (#157788)
Fixes https://github.com/elastic/kibana/issues/157219

On the client, `URLSearchParams.set` encodes strings. On the server,
`query` values are passed to the route decoded. Therefore, there is no
need for special encoding or decoding of requestBody, other then rison
encoding.

PR creates `getTileUrlParams` to standardize vector tile URL creation
across sources. `getTileUrlParams` is placed in a package so it can be
used in integration tests. This greatly increases the maintainability of
integration tests as it makes them ore readable and creates tileUrls
just like the client does to ensure testing is as close to the real
thing as possible.

PR also updates getTileUrl generation to only pick requestBody keys used
by vector tile routes to avoid sending unnecessary data to the server.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-16 14:45:40 -06:00
Maryam Saeidi
fc9f19e3a2
[AO] Add metric threshold integration test (#157489)
## Summary

Closes #157189

This PR adds a metric threshold integration test. This is the first step
in adding more test coverage for observability rules.

**Steps during the test**
1. Generating fake host data by using a similar implementation as
https://github.com/elastic/high-cardinality-cluster
    - Data is generated for the last 15 mins
- Implementation was simplified only to cover fake hosts and was
converted to typescript
2. Creating an action using an index connector
3. Creating a metric threshold rule containing step number 2 action
4. Checking the status of the rule to be active
5. Checking the triggered action to have the correct parameters
6. Checking the generated alert to have the correct information
7. Clean up

**How to run locally**
- Run server
```
node scripts/functional_tests_server --config x-pack/test/api_integration/apis/metrics_ui/config.ts
```
- Then run the test
```
node scripts/functional_tests__runner --include-pack/test/api_integration/apis/metrics_ui/cometric_threshold_rule.ts --config x-pack/test/api_integration/apis/metrics_ui/config.ts
```

**Reference**
I created https://github.com/elastic/integrations/issues/6168 to find a
better way to generate data and make sure that data matches what
metricbeats generates

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-16 10:11:53 +02:00
Robert Austin
0c88d3ae04
[Security] remove kbn-alerts package (unused.) (#157737)
## Summary

Remove the unused kbn-alerts package

### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-15 16:38:10 -07:00
Cee Chen
b9ea4ce4f5
Upgrade EUI to v79.0.1 (#156925)
## Summary

`eui@77.2.2`  `eui@79.0.1`

🦴 The primary changes in this upgrade are around the deprecated
`EuiLoadingContent` being removed in favor of `EuiSkeletonText`.
- Most instances have been a [direct swap of
usage](327626a7be),
but [some replacements were a bit more
opinionated](e6ceb36a75)
as I saw them as potential to take advantage of `EuiSkeletonText`'s
syntactical sugar and screen reader announcements for when state
switches to loaded.

---

## [`79.0.1`](https://github.com/elastic/eui/tree/v79.0.1)

**Bug fixes**

- Fixed broken push `EuiFlyout` behavior
([#6764](https://github.com/elastic/eui/pull/6764))


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

- Updated all `EuiSkeleton` components with new props that allow for
more control over screen reader live announcements:
`announceLoadingStatus`, `announceLoadedStatus`, and `ariaLiveProps`
([#6752](https://github.com/elastic/eui/pull/6752))
- Improved keyboard accessibility in `EuiPageHeader` by ensuring the
right side menu items come into focus from left to right.
([#6753](https://github.com/elastic/eui/pull/6753))

**Breaking changes**

- Removed deprecated `EuiLoadingContent`. Use the `EuiSkeleton`
components instead. ([#6754](https://github.com/elastic/eui/pull/6754))


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

- Improved the contrast ratio of `EuiCheckbox`, `EuiRadio`, and
`EuiSwitch` in their unchecked states to meet WCAG AA guidelines.
([#6729](https://github.com/elastic/eui/pull/6729))
- Added React Testing Library `*ByTestSubject` custom commands to
`within()`. RTL utilities can be imported from
`@elastic/eui/lib/test/rtl`.
([#6737](https://github.com/elastic/eui/pull/6737))
- Updated `EuiAvatar` to support a new letter `casing` prop that allow
customizing text capitalization
([#6739](https://github.com/elastic/eui/pull/6739))
- Updated `EuiFocusTrap` to support the `gapMode` prop configuration
(now defaults to `padding`)
([#6744](https://github.com/elastic/eui/pull/6744))

**Bug fixes**

- Fixed inconsistency in `EuiSearchBar`'s AND/OR semantics between DSL
and query string generation
([#6717](https://github.com/elastic/eui/pull/6717))
- Fixed `EuiFieldNumber`'s native browser validity detection causing
extra unnecessary rerenders
([#6741](https://github.com/elastic/eui/pull/6741))
- Fixed the `scrollLock` property on `EuiFocusTrap` (and other
components using `EuiFocusTrap`, such as `EuiFlyout` and `EuiModal`) to
no longer block scrolling on nested portalled content, such as combobox
dropdowns ([#6744](https://github.com/elastic/eui/pull/6744))

**Breaking changes**

- `EuiAvatar`s with the default `user` type will now default to
capitalizing all initials in uppercase
([#6739](https://github.com/elastic/eui/pull/6739))

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-05-15 16:09:31 -05:00
Joseph McElroy
252d1a88d5
[Enterprise Search] update search-ui + remove searchable-fields config (#157209)
This change updates search-ui connector which uses `query_string`
instead of `combined_fields`. `combined_fields` has challenges with
searching across fields with different search_analyzers. For simplicity,
we are using `query_string`, inline with the default search_template
recommendation.



1b63f296-6dbb-4ff5-ae02-ca01c6e0a6e4
2023-05-09 13:59:45 -07:00
Dzmitry Lemechko
7e0cf7c06d
upgrade webdriver to 4.9.1 (#157137)
## Summary

Upgrade webdriver dependency

We probably need to override some logic inside webdriver to fix #156821,
but first let's make sure we use the latest library
2023-05-09 18:29:08 +02:00
Tim Sullivan
89a8ab858e
[Reporting/Screenshotting] upgrade Puppeteer dependency to v20.1.0 (#156766)
## Summary

Upgrades the dependency for capturing screenshots with Chromium to
[Puppeteer
v20.1.0](https://github.com/puppeteer/puppeteer/releases/tag/puppeteer-v20.1.0)

We're using publicly available Chromium downloads for Windows and Mac.
For Linux, we create a custom build that doesn't have dependencies on
X11 shared libraries.

**Versions:**
* Linux: **113.0.5672.63**
* Windows: **113.0.5672.0**
* Darwin x64: **113.0.5672.0**
* Darwin arm64: **113.0.5672.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
- [x] Verified in Cloud deployment

### For maintainers

- [x] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-08 14:11:27 -07:00
renovate[bot]
b0abcfc202
Update dependency elastic-apm-node to ^3.45.0 (main) (#156892)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [elastic-apm-node](https://togithub.com/elastic/apm-agent-nodejs) |
[`^3.44.1` ->
`^3.45.0`](https://renovatebot.com/diffs/npm/elastic-apm-node/3.44.1/3.45.0)
|
[![age](https://badges.renovateapi.com/packages/npm/elastic-apm-node/3.45.0/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/elastic-apm-node/3.45.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/elastic-apm-node/3.45.0/compatibility-slim/3.44.1)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/elastic-apm-node/3.45.0/confidence-slim/3.44.1)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>elastic/apm-agent-nodejs</summary>

###
[`v3.45.0`](https://togithub.com/elastic/apm-agent-nodejs/releases/tag/v3.45.0)

[Compare
Source](https://togithub.com/elastic/apm-agent-nodejs/compare/v3.44.1...v3.45.0)

For more information, please see the
[changelog](https://www.elastic.co/guide/en/apm/agent/nodejs/current/release-notes-3.x.html#release-notes-3.45.0).

##### Elastic APM Node.js agent layer ARNs

|Region|ARN|
|------|---|

|af-south-1|arn:aws:lambda:af-south-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|ap-east-1|arn:aws:lambda:ap-east-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|ap-northeast-1|arn:aws:lambda:ap-northeast-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|ap-northeast-2|arn:aws:lambda:ap-northeast-2:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|ap-northeast-3|arn:aws:lambda:ap-northeast-3:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|ap-south-1|arn:aws:lambda:ap-south-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|ap-southeast-1|arn:aws:lambda:ap-southeast-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|ap-southeast-2|arn:aws:lambda:ap-southeast-2:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|ap-southeast-3|arn:aws:lambda:ap-southeast-3:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|ca-central-1|arn:aws:lambda:ca-central-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|eu-central-1|arn:aws:lambda:eu-central-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|eu-north-1|arn:aws:lambda:eu-north-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|eu-south-1|arn:aws:lambda:eu-south-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|eu-west-1|arn:aws:lambda:eu-west-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|eu-west-2|arn:aws:lambda:eu-west-2:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|eu-west-3|arn:aws:lambda:eu-west-3:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|me-south-1|arn:aws:lambda:me-south-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|sa-east-1|arn:aws:lambda:sa-east-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|us-east-1|arn:aws:lambda:us-east-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|us-east-2|arn:aws:lambda:us-east-2:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|us-west-1|arn:aws:lambda:us-west-1:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

|us-west-2|arn:aws:lambda:us-west-2:267093732750:layer:elastic-apm-node-ver-3-45-0:1|

</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.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/elastic/kibana).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-08 08:37:17 -04:00
Dzmitry Lemechko
acce3cbbe4
Upgrade chromedriver to 113.0.0 (#156950)
## Summary

Closes #156821

Updating chromedriver dependency to match the latest Chrome release
2023-05-08 09:49:23 +02:00
renovate[bot]
9b6cbfa0bb
Update XState (main) (#156602)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-05 11:49:05 +02:00
Trevor Pierce
fee63e3ea9
Upgrade EUI to v77.2.2 (#155208)
## Summary

`eui@77.1.1`  `eui@77.2.2`

Closes https://github.com/elastic/eui/issues/6724

---

## [`77.2.2`](https://github.com/elastic/eui/tree/v77.2.2)

- Updated `EuiFocusTrap` to support the `gapMode` prop configuration
(now defaults to `padding`)
([#6744](https://github.com/elastic/eui/pull/6744))

**Bug fixes**

- Fixed the `scrollLock` property on `EuiFocusTrap` (and other
components using `EuiFocusTrap`, such as `EuiFlyout` and `EuiModal`) to
no longer block scrolling on nested portalled content, such as combobox
dropdowns ([#6744](https://github.com/elastic/eui/pull/6744))

## [`77.2.1`](https://github.com/elastic/eui/tree/v77.2.1)

**Bug fixes**

- Fixed `EuiFieldNumber`'s native browser validity detection causing
extra unnecessary rerenders
([#6741](https://github.com/elastic/eui/pull/6741))

## [`77.2.0`](https://github.com/elastic/eui/tree/v77.2.0)

- Updated `EuiFieldNumber` to detect native browser invalid state and
show an invalid icon ([#6704](https://github.com/elastic/eui/pull/6704))
- Improved the input widths of `EuiRange` and `EuiDualRange` when
`showInput={true}` to account for invalid icons
([#6704](https://github.com/elastic/eui/pull/6704))
- Improved the `isInvalid` styling of `EuiDualRange` when
`showInput="inputWithPopover"`
([#6704](https://github.com/elastic/eui/pull/6704))
- Updated `EuiFormControlLayoutIcons` to render left icons in expected
DOM order ([#6705](https://github.com/elastic/eui/pull/6705))
- Updated `EuiDatePickerRange`'s `isInvalid` state to match other range
inputs ([#6705](https://github.com/elastic/eui/pull/6705))
- Updated `EuiSuperDatePicker`'s `isInvalid` state to match other range
inputs ([#6705](https://github.com/elastic/eui/pull/6705))

**Bug fixes**

- Fixed `EuiValidatableControl` to correctly display `isInvalid` states
on mount ([#6705](https://github.com/elastic/eui/pull/6705))
- Fixed an issue with `EuiSearchBar` where quoted phrases were not
quoted when generating an Elasticsearch query.
([#6714](https://github.com/elastic/eui/pull/6714))

---------

Co-authored-by: Constance Chen <constance.chen.3@gmail.com>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Constance Chen <constance.chen@elastic.co>
2023-05-05 01:11:43 +01:00
Marco Liberati
5207e52895
[Lens] Visualization UI package refactoring (#156185)
## Summary

Fix #156181

This PR attempts to reduce the bundle size of the visualization UI
package by moving out all color manipulation functions into the
`@kbn/coloring` package, including the `chroma-js` dependency.
After a bundle size analysis the `chroma-js` package was found to be the
most offending in terms of size as its pre-2.0 version was not
treeshakable: other dependencies like EUI and Elastic Charts were
already using version `^2.1.0` therefore an upgrade was triggered at
kibana level.

Removed more kb from the package and Lens via replacing the `color`
dependency with the new `chroma-js` package.

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


### Risk Matrix

Delete this section if it is not applicable to this PR.

Before closing this PR, invite QA, stakeholders, and other developers to
identify risks that should be tested prior to the change/feature
release.

When forming the risk matrix, consider some of the following examples
and how they may potentially impact the change:

| Risk | Probability | Severity | Mitigation/Notes |

|---------------------------|-------------|----------|-------------------------|
| Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
| Low | High | Integration tests will verify that all features are still
supported in non-default Kibana Space and when user switches between
spaces. |
| Multiple nodes&mdash;Elasticsearch polling might have race conditions
when multiple Kibana nodes are polling for the same tasks. | High | Low
| Tasks are idempotent, so executing them multiple times will not result
in logical error, but will degrade performance. To test for this case we
add plenty of unit tests around this logic and document manual testing
procedure. |
| Code should gracefully handle cases when feature X or plugin Y are
disabled. | Medium | High | Unit tests will verify that any feature flag
or plugin combination still results in our service operational. |
| [See more potential risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |


### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-04 14:12:10 +02:00
Walter Rafelsberger
385d0dc84a
[ML] Package @kbn/ml-anomaly-utils (#155697)
Creates Package `@kbn/ml-anomaly-utils`.

- This moves some of the utility functions, constants and types related
to Anomaly Detection we previously exposed from the `ml` plugin itself
to a package `@kbn/ml-anomaly-utils`, resulting in ~5.9KB reduction of
the plugin's page load bundle size.
- To reduce increases in async bundle size for consuming plugins the
utils have been refactored into individual files to allow deep imports
and get some optimization through that. Some previously duplicated code
in consuming plugins has been deleted and replaced with deep imports of
the corresponding original code in the package.
- Types have been prefixed with `Ml`.
- Constants have been prefixed with `ML_`.

Created package via `node scripts/generate package @kbn/ml-anomaly-utils
--web --dir ./x-pack/packages/ml/anomaly_utils`.
2023-05-03 08:46:27 +02:00
Clint Andrew Hall
b217dbf001
[serverless] Create Security Serverless plugin (#156104)
> Derived from https://github.com/elastic/kibana/pull/153274
> Builds upon https://github.com/elastic/kibana/pull/155582

## Summary

This PR creates the Serverless Security plugin, based on the work from
https://github.com/elastic/kibana/pull/153274:

- creates the plugin,
- adds API to hide the solution navigation from Security,
- calls that API if the chrome style is `project`.

<img width="1688" alt="Screenshot 2023-04-27 at 12 37 46 PM"
src="https://user-images.githubusercontent.com/297604/234979670-425bfb12-8194-4916-8f92-efff7804b577.png">

## Next Steps

- render the left nav from https://github.com/elastic/kibana/pull/153274
using an API provided by @elastic/appex-sharedux
  - this low-level API should be coming in the next few days.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-02 05:42:55 -07:00
renovate[bot]
a16930fc5b
Update cypress (main) (#152647)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [cypress](https://togithub.com/cypress-io/cypress) | [`^12.6.0` ->
`^12.10.0`](https://renovatebot.com/diffs/npm/cypress/12.6.0/12.10.0) |
[![age](https://badges.renovateapi.com/packages/npm/cypress/12.10.0/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/cypress/12.10.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/cypress/12.10.0/compatibility-slim/12.6.0)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/cypress/12.10.0/confidence-slim/12.6.0)](https://docs.renovatebot.com/merge-confidence/)
|
| [cypress-axe](https://togithub.com/component-driven/cypress-axe) |
[`^1.3.0` ->
`^1.4.0`](https://renovatebot.com/diffs/npm/cypress-axe/1.3.0/1.4.0) |
[![age](https://badges.renovateapi.com/packages/npm/cypress-axe/1.4.0/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/cypress-axe/1.4.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/cypress-axe/1.4.0/compatibility-slim/1.3.0)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/cypress-axe/1.4.0/confidence-slim/1.3.0)](https://docs.renovatebot.com/merge-confidence/)
|
|
[cypress-multi-reporters](https://togithub.com/you54f/cypress-multi-reporters)
| [`^1.6.2` ->
`^1.6.3`](https://renovatebot.com/diffs/npm/cypress-multi-reporters/1.6.2/1.6.3)
|
[![age](https://badges.renovateapi.com/packages/npm/cypress-multi-reporters/1.6.3/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/cypress-multi-reporters/1.6.3/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/cypress-multi-reporters/1.6.3/compatibility-slim/1.6.2)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/cypress-multi-reporters/1.6.3/confidence-slim/1.6.2)](https://docs.renovatebot.com/merge-confidence/)
|
| [cypress-recurse](https://togithub.com/bahmutov/cypress-recurse) |
[`^1.27.0` ->
`^1.31.2`](https://renovatebot.com/diffs/npm/cypress-recurse/1.27.0/1.31.2)
|
[![age](https://badges.renovateapi.com/packages/npm/cypress-recurse/1.31.2/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/cypress-recurse/1.31.2/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/cypress-recurse/1.31.2/compatibility-slim/1.27.0)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/cypress-recurse/1.31.2/confidence-slim/1.27.0)](https://docs.renovatebot.com/merge-confidence/)
|
|
[eslint-plugin-cypress](https://togithub.com/cypress-io/eslint-plugin-cypress)
| [`^2.12.1` ->
`^2.13.2`](https://renovatebot.com/diffs/npm/eslint-plugin-cypress/2.12.1/2.13.2)
|
[![age](https://badges.renovateapi.com/packages/npm/eslint-plugin-cypress/2.13.2/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/eslint-plugin-cypress/2.13.2/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/eslint-plugin-cypress/2.13.2/compatibility-slim/2.12.1)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/eslint-plugin-cypress/2.13.2/confidence-slim/2.12.1)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>cypress-io/cypress</summary>

###
[`v12.10.0`](https://togithub.com/cypress-io/cypress/releases/tag/v12.10.0)

[Compare
Source](https://togithub.com/cypress-io/cypress/compare/v12.9.0...v12.10.0)

Changelog:
https://docs.cypress.io/guides/references/changelog#&#8203;12-10-0

###
[`v12.9.0`](https://togithub.com/cypress-io/cypress/releases/tag/v12.9.0)

[Compare
Source](https://togithub.com/cypress-io/cypress/compare/v12.8.1...v12.9.0)

Changelog:
https://docs.cypress.io/guides/references/changelog#&#8203;12-9-0

###
[`v12.8.1`](https://togithub.com/cypress-io/cypress/releases/tag/v12.8.1)

[Compare
Source](https://togithub.com/cypress-io/cypress/compare/v12.8.0...v12.8.1)

Changelog:
https://docs.cypress.io/guides/references/changelog#&#8203;12-8-1

###
[`v12.8.0`](https://togithub.com/cypress-io/cypress/releases/tag/v12.8.0)

[Compare
Source](https://togithub.com/cypress-io/cypress/compare/v12.7.0...v12.8.0)

Changelog:
https://docs.cypress.io/guides/references/changelog#&#8203;12.8.0

###
[`v12.7.0`](https://togithub.com/cypress-io/cypress/releases/tag/v12.7.0)

[Compare
Source](https://togithub.com/cypress-io/cypress/compare/v12.6.0...v12.7.0)

Changelog:
https://docs.cypress.io/guides/references/changelog#&#8203;12.7.0

</details>

<details>
<summary>component-driven/cypress-axe</summary>

###
[`v1.4.0`](https://togithub.com/component-driven/cypress-axe/releases/tag/v1.4.0)

[Compare
Source](https://togithub.com/component-driven/cypress-axe/compare/v1.3.0...v1.4.0)

##### Features

- retry option
([#&#8203;151](https://togithub.com/component-driven/cypress-axe/issues/151))
([682ba11](682ba11d1d))

</details>

<details>
<summary>bahmutov/cypress-recurse</summary>

###
[`v1.31.2`](https://togithub.com/bahmutov/cypress-recurse/releases/tag/v1.31.2)

[Compare
Source](https://togithub.com/bahmutov/cypress-recurse/compare/v1.31.1...v1.31.2)

##### Bug Fixes

- compute limit from timeout and delay, closes
[#&#8203;159](https://togithub.com/bahmutov/cypress-recurse/issues/159)
([ae325c9](ae325c9436))

###
[`v1.31.1`](https://togithub.com/bahmutov/cypress-recurse/releases/tag/v1.31.1)

[Compare
Source](https://togithub.com/bahmutov/cypress-recurse/compare/v1.31.0...v1.31.1)

##### Bug Fixes

- yield value on time limit
([6a8af64](6a8af64400))

###
[`v1.31.0`](https://togithub.com/bahmutov/cypress-recurse/releases/tag/v1.31.0)

[Compare
Source](https://togithub.com/bahmutov/cypress-recurse/compare/v1.30.0...v1.31.0)

##### Features

- yield the last value
([#&#8203;158](https://togithub.com/bahmutov/cypress-recurse/issues/158))
([2a089f4](2a089f4543))

###
[`v1.30.0`](https://togithub.com/bahmutov/cypress-recurse/releases/tag/v1.30.0)

[Compare
Source](https://togithub.com/bahmutov/cypress-recurse/compare/v1.29.0...v1.30.0)

##### Bug Fixes

- include commands in the list of files
([3ce4aad](3ce4aad923))

##### Features

- add optional custom command cy.recurse
([#&#8203;156](https://togithub.com/bahmutov/cypress-recurse/issues/156))
([8cb1a6f](8cb1a6fb3f))

###
[`v1.29.0`](https://togithub.com/bahmutov/cypress-recurse/releases/tag/v1.29.0)

[Compare
Source](https://togithub.com/bahmutov/cypress-recurse/compare/v1.28.0...v1.29.0)

##### Features

- print better error message
([#&#8203;148](https://togithub.com/bahmutov/cypress-recurse/issues/148))
([6dfb97e](6dfb97e48f))

###
[`v1.28.0`](https://togithub.com/bahmutov/cypress-recurse/releases/tag/v1.28.0)

[Compare
Source](https://togithub.com/bahmutov/cypress-recurse/compare/v1.27.1...v1.28.0)

##### Features

- add do not fail option
([#&#8203;146](https://togithub.com/bahmutov/cypress-recurse/issues/146))
([4621825](46218259d1))

###
[`v1.27.1`](https://togithub.com/bahmutov/cypress-recurse/releases/tag/v1.27.1)

[Compare
Source](https://togithub.com/bahmutov/cypress-recurse/compare/v1.27.0...v1.27.1)

##### Bug Fixes

- put labels on the logs
([#&#8203;145](https://togithub.com/bahmutov/cypress-recurse/issues/145))
([2fa4dea](2fa4dea883))

</details>

<details>
<summary>cypress-io/eslint-plugin-cypress</summary>

###
[`v2.13.2`](https://togithub.com/cypress-io/eslint-plugin-cypress/releases/tag/v2.13.2)

[Compare
Source](https://togithub.com/cypress-io/eslint-plugin-cypress/compare/v2.13.1...v2.13.2)

##### Bug Fixes

- Wait incorrectly reported as unsafe to chain
([7c20206](7c20206))

###
[`v2.13.1`](https://togithub.com/cypress-io/eslint-plugin-cypress/releases/tag/v2.13.1)

[Compare
Source](https://togithub.com/cypress-io/eslint-plugin-cypress/compare/v2.13.0...v2.13.1)

##### Bug Fixes

- Solve unsafe to chain command does not exist
([#&#8203;126](https://togithub.com/cypress-io/eslint-plugin-cypress/issues/126))
([1fdfef7](1fdfef7))

###
[`v2.13.0`](https://togithub.com/cypress-io/eslint-plugin-cypress/releases/tag/v2.13.0)

[Compare
Source](https://togithub.com/cypress-io/eslint-plugin-cypress/compare/v2.12.1...v2.13.0)

##### Features

- Add 'unsafe-to-chain-command' rule
([bf6a75d](bf6a75d))

</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 [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/elastic/kibana).

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

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Patryk Kopyciński <contact@patrykkopycinski.com>
2023-05-02 05:40:21 -07:00
Marco Liberati
ca780c526a
[Lens] New random sampling shared plugin (#155068)
## Summary

A new plugin to share the Random sampling logic across Kibana apps.
As starting point it contains the Random Sampling Icon + the setting
slider.

<img width="788" alt="Screenshot 2023-04-18 at 11 03 36"
src="https://user-images.githubusercontent.com/924948/232743718-9fad0308-9c21-4bd7-901f-9634ac3486ad.png">

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


### Risk Matrix

Delete this section if it is not applicable to this PR.

Before closing this PR, invite QA, stakeholders, and other developers to
identify risks that should be tested prior to the change/feature
release.

When forming the risk matrix, consider some of the following examples
and how they may potentially impact the change:

| Risk | Probability | Severity | Mitigation/Notes |

|---------------------------|-------------|----------|-------------------------|
| Multiple Spaces&mdash;unexpected behavior in non-default Kibana Space.
| Low | High | Integration tests will verify that all features are still
supported in non-default Kibana Space and when user switches between
spaces. |
| Multiple nodes&mdash;Elasticsearch polling might have race conditions
when multiple Kibana nodes are polling for the same tasks. | High | Low
| Tasks are idempotent, so executing them multiple times will not result
in logical error, but will degrade performance. To test for this case we
add plenty of unit tests around this logic and document manual testing
procedure. |
| Code should gracefully handle cases when feature X or plugin Y are
disabled. | Medium | High | Unit tests will verify that any feature flag
or plugin combination still results in our service operational. |
| [See more potential risk
examples](https://github.com/elastic/kibana/blob/main/RISK_MATRIX.mdx) |


### For maintainers

- [ ] This was checked for breaking API changes and was [labeled
appropriately](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co>
2023-05-02 10:30:46 +02:00
Cee Chen
0564e5434e
Upgrade EUI to v77.1.2 (#156232)
## Summary

`eui@77.1.1`  `eui@77.1.2`

This upgrade consists of a backport release intended to fix a major bug
where portals within `EuiFlyout`s and `EuiModal`s are not scrollable.
fixes https://github.com/elastic/kibana/issues/156161

This release also adds functionality that resolves the need for a TODO
workaround added in https://github.com/elastic/kibana/pull/153227

---

## [`77.1.2`](https://github.com/elastic/eui/tree/v77.1.2)

- Updated `EuiFocusTrap` to support the `gapMode` prop configuration
(now defaults to `padding`)
([#6744](https://github.com/elastic/eui/pull/6744))

**Bug fixes**

- Fixed the `scrollLock` property on `EuiFocusTrap` (and other
components using `EuiFocusTrap`, such as `EuiFlyout` and `EuiModal`) to
no longer block scrolling on nested portalled content, such as combobox
dropdowns ([#6744](https://github.com/elastic/eui/pull/6744))

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-05-01 10:05:11 -07:00
Clint Andrew Hall
4e88645b59
[serverless] Create Observability Serverless plugin (#156118)
> Derived from https://github.com/elastic/kibana/pull/153274
> Builds upon https://github.com/elastic/kibana/pull/155582

## Summary

This PR creates the Serverless Observability plugin, based on the work
from https://github.com/elastic/kibana/pull/153274:

- creates the plugin,
- adds API to hide the solution navigation from Enterprise Search,
- calls that API if the chrome style is `project`.

<img width="1610" alt="Screenshot 2023-04-27 at 5 03 44 PM"
src="https://user-images.githubusercontent.com/297604/234990765-d6770650-41b3-4e94-ad7f-c6a22778d39a.png">

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-05-01 09:27:32 +02:00
Clint Andrew Hall
965b327ca6
[serverless] Create Search Serverless plugin (#156037) 2023-04-27 21:49:59 -04:00
Tim Sullivan
604a02f6a1
[SharedUx] Chrome/Navigation package (#152510)
**The API for the link definition is subject to change.** This PR
provides linking functionality and structure that will give solution
devs a starting point for side nav in their projects. The API uses
simple hrefs for now, because it's the easiest thing to start with.
Planning forward, we are thinking of a different navigation model that
separates nav structure from presentation of each nav item - this will
allow reuse of the structure without reusing the presentation.

## Isolated dependencies
In order for this component to be usable in `main`, a bit further work
is currently required in the ChromeStart service and the Serverless
plugin. These links are examples of a usable implementation that link to
a POC branch:
* Light mode for the side nav container:
0a32333cdf
* Extensions to Serverless plugin and the ChromeStart service:
16b0aad610

## Summary

Introduces a component to host the side navigation in Kibana. Solution
teams can insert their own content, and have other small options to
customize the presentation: see the storybook demos for more.

Closes https://github.com/elastic/kibana/issues/154479
Closes https://github.com/elastic/kibana/issues/154484
Closes https://github.com/elastic/kibana/issues/154485
~~Closes https://github.com/elastic/kibana/issues/154489~~
Closes https://github.com/elastic/kibana/issues/154481
Closes #154480
Closes #154486
Closes #154487

<img width="1462" alt="image"
src="https://user-images.githubusercontent.com/908371/233739506-7b88646e-3c19-44f0-afbf-ca1a23d32c57.png">

## Developer documentation

See the Storybook demos:
* run: `yarn storybook shared_ux`
* Find the `Chrome > Navigation` section in the Storybook app

### Checklist

Delete any items that are not applicable to this PR.
- [x] Home icon links to Project's "home" - or the customer user setting
- [x] Home icon shows loading indicator
- [x] All the Platform links navigate to the correct place
- ~~Platform links are not shown if the underlying plugin is disabled~~
- [x] Nav items define their links using `href` only
- [x] All href links work
- [x] Nav menu item to link to Cloud deployment
- [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] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [x] 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))
- [ ] 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)

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-04-27 17:13:14 -07:00
Drew Tate
0832ae27a0
Visualization UI components package (#155459)
## Summary

Moves a series of Lens components to an independent plugin for reuse in
the annotations library.


### 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
- [ ] remove mentions of Lens

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-04-27 15:53:39 -05:00
renovate[bot]
afb36f3fc5
Update XState (main) (#150263)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-04-27 19:13:16 +02:00
Jean-Louis Leysens
e9197ad359
[Saved Objects] Compatible mappings PR check (#148656)
## Summary

This PR adds a technical control to prevent incompatible mappings
changes. These include:

1. Removing mapped fields. For the foreseeable future we require that
teams only introduce new fields - in short: this avoids the "reindex"
step in our migrations.
2. Changing the type of a field. We leverage ES to determine whether a
given set of mappings can be applied "on top" of another. Similarly,
this avoids the "reindex" step in migrations.

The above checks depend on a snapshot of the mappings from `main`, these
are the "current" mappings and are extracted from plugin code. This PR
will bootstrap `main` with an initial set of mappings extracted from
plugins (bulk of new lines added).

## The new CLI

See the added `README.md` for details on how the CLI works.

## How will it work?

Any new PR that introduces compatible mappings changes will result in a
new snapshot being captured, then merged to main for other PRs to merge
and run the same checks against (currently committing new snapshots
happens in the CI check so there is no manual step of maintaining the
snapshot).

## Additional

We should consider combining this CI check with the existing check in
`src/core/server/integration_tests/saved_objects/migrations/check_registered_types.test.ts`.
Hopefully we can automate the check such that no manual review is needed
from Core, not sure how we might cover the hash of the non-mappings
related fields. We could consider narrowing the Jest test to exclude
mappings.

### 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: spalger <spencer@elastic.co>
2023-04-27 15:42:31 +02:00
Pierre Gayvallet
2250020b81
Bump moment-timezone to the latest version (#155832)
## Summary

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

Bump `moment-timezone` from `0.5.34` to `0.5.43` (latest version) to
include latest timezone changes

## Release Note

Fix a bug causing the latest timezone changes to not be taken into
account for date formatting (e.g Mexico 2023)
2023-04-27 07:44:18 +02:00
Tiago Costa
27b84afd69
chore(NA): bump version to 8.9.0 (#155893)
Usually bump from 8.8.0 to 8.9.0
2023-04-26 21:12:52 +01:00
Clint Andrew Hall
8e37b38417
[serverless] Create the Serverless Plugin (#155582)
> Derived from https://github.com/elastic/kibana/pull/153274 for
production.

## Summary

This PR creates the `serverless` plugin for Kibana Serverless projects.


![image](https://user-images.githubusercontent.com/297604/233892935-b3713575-a2f7-4e82-a9dd-e8c11823683f.png)


It uses the methodology proven out in the proof-of-concept
(https://github.com/elastic/kibana/pull/153274) and prepares it for
production:

- Adds chrome style and related API to the `chrome` services.
- Creates the `serverless` plugin.
- Invokes the new chrome style API for all serverless projects.
- Alters `yarn` scripts to support all project types, and switching
between them.
- Creates the new "Project Switcher" component for use in the new chrome
header for Serverless.
- Creates a Storybook config for this and future components.
- Adds API endpoint to trigger project switching and `Watcher` restarts.

<img width="1598" alt="Screenshot 2023-04-26 at 10 44 01 AM"
src="https://user-images.githubusercontent.com/297604/234612654-fdcf38ea-8c48-4066-bc85-507f40c984aa.png">


## Next steps

- [x] Creating a PR for enabling/disabling related plugins for
Serverless. (https://github.com/elastic/kibana/pull/155583)
- [ ] Creating product plugin PR based on
https://github.com/elastic/kibana/pull/153274.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-04-26 11:48:23 -07:00
Sergi Massaneda
202f13f7be
[SecuritySolution] Refactor security packages (#155365)
## Summary

closes: https://github.com/elastic/kibana/issues/155301

Moves _packages/security-solution/_ to
_x-pack/packages/security-solution/_
Moves _x-pack/packages/kbn-securitysolution-*_ into the new
_x-pack/packages/security-solution/_

It contains 3 packages now:
- data_view/
- ecs_data_quality_dashboard/
- side_nav/

Package names and ids have not changed.

## Other

- eslint configured for all the packages in the directory
- i18n prefix `securitySolutionPackages` configured for all packages in
the directory
- generic storybook configuration, run with: `yarn storybook
security_solution_packages`

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-04-26 05:05:36 -07:00
Kurt
b66df8774a
Per User Dark Mode Preference (#151507)
## Summary

Allow user's to set their desired theme on their User Profile

## How to test

Login as a non-cloud user, navigate to User Profile:
<img width="1051" alt="Screenshot 2023-02-28 at 1 40 34 PM"
src="https://user-images.githubusercontent.com/21210601/221948512-a3e9b485-d3fa-4646-ae7d-63a68777cf19.png">

## Release Note
Users can now select their theme preference for Kibana in their User
Profile

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Michael Marcialis <michael.l.marcialis@gmail.com>
2023-04-25 15:19:20 -04:00
Karl Godard
672e9925b0
[Session View] Fixes to slow process event queries + xterm.js updated. (#155326)
## Summary

Issue: https://github.com/elastic/kibana/issues/155183

This PR improves the process_events_route and io_event_route queries. We
now pass in the index and **process.entry_leader.start** time to greatly
improve the loading time of session view. Prior to this change, we were
doing a cross cluster search across the entire
logs-endpoint.events.process datastream. Session view will now use the
index from the entry leader event to limit the scope of the query. It
also ensures a range query is added with the entry leader start time, to
prevent data prior to the session from being hit.

I've also updated the npm package for xterm.js which addresses this
renovate ticket: https://github.com/elastic/kibana/pull/147815

### 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
- [x] Any UI touched in this PR is usable by keyboard only (learn more
about [keyboard accessibility](https://webaim.org/techniques/keyboard/))
- [x] 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))
- [x] 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))
- [x] This was checked for [cross-browser
compatibility](https://www.elastic.co/support/matrix#matrix_browsers)

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
2023-04-25 09:25:01 -07:00
Oliver Gupte
077245606b
[APM] Create plugin for logs onboarding (#154728)
Closes #154733

Creates a new plugin for logs onboarding with wizard to organize steps
into discrete views.

#### TODO:
- [x] rename plugin to observability_onboarding
- [x] configure: UI and server plugin
- [x] enable/disable new plugin
- [x] remove the link to it from Observability nav

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Yngrid Coello <yngrid.coello@elastic.co>
Co-authored-by: Yngrid Coello <yngrdyn@gmail.com>
2023-04-25 11:14:21 -04:00
Matthew Kime
273eec0f64
[content management / maps] Create abstract types for saved object usage with content management api (#154985)
## Summary

Abstract types for using Saved Objects with the content management api.
This should significantly reduce the amount of code to use additional
saved object types.

---------

Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
2023-04-24 20:58:22 -05:00
Walter Rafelsberger
d6d933a2af
[ML] Moves shared code to @kbn/ml-error-utils. (#155372)
- Moves code from `x-pack/plugins/ml/common/util/errors` that was shared
via `x-pack/plugins/ml/public/shared.ts` to `@kbn/ml-error-utils`.
- `data_visualizer` and `aiops` plugins now use that package instead of
code duplication.
2023-04-22 09:25:37 +02:00
Luke
8a3f5ebbea
[Security Solution] Store expandable flyout state in the url (#154703) 2023-04-21 15:45:37 -05:00
Vadim Kibana
7a36571ce6
Bump "ajv" dependency minor version (#155234)
## Summary

Upgrades `ajv` from `8.11` to `8.12`.
2023-04-19 18:59:49 +02:00
Jonathan Buttner
8d96fc82cf
[Cases] Delete file attachments when files do not exist (#155088)
This PR modifies the bulk delete files API to support deleting the case
attachments even when the file does not exist. We could run into this
scenario if a user deleted the file outside of cases first and then
attempts to delete the case attachment.
2023-04-19 10:10:22 -04:00
Bree Hall
3259647b00
Upgrade EUI to v77.1.1 (#154838)
EUI `77.0.0` ➡️ `77.1.1`

## [`77.1.0`](https://github.com/elastic/eui/tree/v77.1.0)

- Updated `EuiDatePicker` to display a warning icon and correctly set
`aria-invalid` when `isInvalid` is passed
([#6677](https://github.com/elastic/eui/pull/6677))
- Updated `EuiFilePicker` to display an alert icon when `isInvalid`
([#6678](https://github.com/elastic/eui/pull/6678))
- Updated `EuiTextArea` to display an alert icon when `isInvalid`
([#6679](https://github.com/elastic/eui/pull/6679))
- Updated `EuiTextArea` to support the `isLoading` prop
([#6679](https://github.com/elastic/eui/pull/6679))
- Updated `EuiComboBox` to display a warning icon and correctly set
`aria-invalid` when `isInvalid` is passed
([#6680](https://github.com/elastic/eui/pull/6680))

**Bug fixes**

- Fixed `EuiAccordion` to not set an `aria-expanded` attribute on
non-interactive `buttonElement`s
([#6694](https://github.com/elastic/eui/pull/6694))
- Fixed an `EuiPopoverFooter` bug causing nested popovers within
popovers (note: not a recommended use-case) to unintentionally override
its panel padding size inherited from context
([#6698](https://github.com/elastic/eui/pull/6698))
- Fixed `EuiComboBox` to only delete the last selected item on backspace
if the input caret is present
([#6699](https://github.com/elastic/eui/pull/6699))

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Jon <jon@elastic.co>
2023-04-18 15:51:39 -05:00