mirror of
https://github.com/elastic/kibana.git
synced 2025-04-23 17:28:26 -04:00
268 commits
Author | SHA1 | Message | Date | |
---|---|---|---|---|
|
cc95f115c3
|
[Response Ops][Task Manager] Pass fakeRequest for tasks with associated API key instead of actual key (#217327)
Resolves https://github.com/elastic/kibana/issues/216808 ## Summary Instead of directly passing the `apiKey` and `userScope` (when available) into each task type runner, we create a fake Kibana Request with an Authorization ApiKey header in the task manager and pass that request into the task type runner. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> |
||
|
93174d3887
|
Change reporting CODEOWNERS to response ops (#213560)
In this PR, I'm changing the CODEOWNERS for reporting related modules. While reviewing, ensure I haven't missed anything or moved a module that should remain part of sharedux team. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Tim Sullivan <tsullivan@users.noreply.github.com> Co-authored-by: Timothy Sullivan <tsullivan@elastic.co> |
||
|
4bdea60433
|
[Response Ops][Task Manager] Run tasks as the current user (#205577)
## Summary Resolves: https://github.com/elastic/kibana/issues/190661 This PR allows tasks to be ran scoped as the current user. It accomplishes this by creating an API when the user schedules this task. It will then persist the API key in the task instance which allows the task handler to have access to the user's privileges. To test: 1. Run `yarn start --run-examples` 2. Navigate to `http://localhost:5601/app/triggersActionsUiExample/task_manager_with_api_key` 3. Click on `Schedule Task 1 and 2`, this will schedule a mock test that is defined in `x-pack/platform/plugins/shared/alerting/server/plugin.ts`, which prints out the task instance and the scoped clients. 4. Click on `Remove` to cancel the task, which then cleans up and invalidates the API keys. 5. Reschedule the 2 tasks and click on `Remove All Tasks` which will bulk remove tasks and invalidate API keys. Limitation of this approach: - Because we depend on a request, this would mean every schedule that is tied to a user needs to be triggered using a request. (Unless we have a way of generating an API key without using the request). --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> |
||
|
7a41906d88
|
[Authz] Mandatory Security Config (#215180)
## Summary This PR makes `security` a required field for route registration. To incorporate the new required filed, changes has been made: 1. **Test file updates**. A lot of the updates made in this PR were made in tests. 2. **Versioned route security configuration**. For the versioned route `security` config has been lifted up to the top-level definition: Before ```ts router.versioned .get({ path: '/api/path', options: { ... }, ... }, handler) .addVersion({ version: 1, validate: false, security: { authz: { requiredPrivileges: ['privilege'], }, }, }); ``` After ```ts router.versioned .get({ path: '/api/path', options: { ... }, security: { authz: { requiredPrivileges: ['privilege'], }, }, ... }, handler) .addVersion({ version: 1, validate: false, }); ``` 3. **Type adjustments for route wrappers**. Type changes has been made in: - `x-pack/solutions/observability/plugins/infra/server/lib/adapters/framework/adapter_types.ts` - `x-pack/solutions/observability/plugins/metrics_data_access/server/lib/adapters/framework/adapter_types.ts` - `x-pack/solutions/observability/plugins/synthetics/server/routes/types.ts` - `x-pack/solutions/observability/plugins/uptime/server/legacy_uptime/routes/types.ts` Security was made an optional field for the wrappers defined in those files, since the default security is provided in the wrapper itself and then passed down to the core router. ### 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 - [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) __Closes: https://github.com/elastic/kibana/issues/215331__ --------- Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> |
||
|
377a812784
|
[dashboard] clean up dashboard setup and start contracts (#212968)
* remove `locator` from setup and start contract * remove `dashboardFeatureFlagConfig` from start contract --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> |
||
|
f8a3051605
|
[ResponseOps][Rules] Add solution field to rule types (#212079)
We need to add a `solution` field to rule types in order to provide a root-level categorization based on the Kibana solution/area that owns each rule type. This will serve as a more reliable alternative to previous attempts at `featureId`-based filtering. ## Summary - Adds a `solution` field to rule type objects, accepting the values `observability`, `security` and `stack`. - Categorizes existing rule types. - Updates tests with the new field. ## Verification steps 1. Check that the rule types you own have been categorized under the correct solution 2. Create rules in multiple areas of Kibana 3. Check that those rules show up correctly in their UIs and work correctly ## References Closes #212017 |
||
|
fffc18cfc4
|
[Response Ops] [Rule Form] Remove V1 Rule Form Flyout (#209171)
## Summary Closes #195211 Removes all old rule form flyout code, which should no longer be referenced at all after https://github.com/elastic/kibana/pull/206685/ ### 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> |
||
|
b213eb6bb2
|
[embeddable] replace Embeddable ViewMode with presentation-publishing ViewMode (#211960)
Embeddable ViewMode is part of legacy embeddable architecture. This PR removes Embeddable ViewMode and replaces its usage with presentation-publishing ViewMode. presentation-publishing ViewMode is a string literal type so an enum is no longer needed. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> |
||
|
367ff8dbec
|
[Response Ops] [Rule Form] Add Rule Form Flyout v2 (#206685)
## Summary Part of #195211 Replaces the create/edit rule flyout with the new rule flyout <img width="1032" alt="Screenshot 2025-01-14 at 3 12 30 PM" src="https://github.com/user-attachments/assets/9cbcf4f8-1078-4f7e-a55a-aacc2d877a14" /> <img width="1383" alt="Screenshot 2025-01-14 at 3 12 52 PM" src="https://github.com/user-attachments/assets/2270d57b-9462-4898-9dd0-41baefcc02d4" /> Restores the confirmation prompt before canceling or saving a rule without actions defined. Also fixes most of the design papercuts in the Actions step: <img width="494" alt="Screenshot 2025-01-14 at 3 11 06 PM" src="https://github.com/user-attachments/assets/3cf21d43-88e0-4250-b290-a545e1ebdbcf" /> <img width="494" alt="Screenshot 2025-01-14 at 3 11 01 PM" src="https://github.com/user-attachments/assets/00ef3f95-c91b-4bb7-aead-a3e23c02f7df" /> ### 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: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> |
||
|
ff0470fb42
|
Consolidate all language definitions used in monaco within the @kbn/monaco package (#208950)
## Summary This PR was created in response to https://github.com/elastic/kibana/pull/208858, it migrates all existing language definitions within the `@kbn/code-editor` package into the `@kbn/monaco` package to provide a separation of concern for logic that doesn't particularly relate to the configurations for the code editor UI. With this change, all supported languages are ingested from the `@kbn/monaco` package where they will be domiciled from henceforth, and in turn fix the issue that was discovered relating to the way the language definitions within `@kbn/code-editor` get registered as a side effect. With this change, to add support for a new language, said language should be defined within `@kbn/monaco`, and registered in `languages/index.ts`. <!-- ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [ ] 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) - [ ] [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 - [ ] 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 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 - [ ] 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: kibanamachine <42973632+kibanamachine@users.noreply.github.com> |
||
|
a74066d6f8
|
[ResponseOps][Alerts] Move the alerts table to a dedicated package (#207878)
## Summary This PR turns the AlertsTable into a standalone component, making it independent from the `TriggersActionsUI` plugin. #### Removes the alerts table registry All configuration is now managed through the AlertsTable component props. Shared configurations are handled by giving consumers the ability to directly provide alerts table wrapper components (see for example the `renderAlertsTable` prop of `getCases`). #### Moves the alerts table to dedicated package(s) Following the feature-driven structure we're introducing for ResponseOps (alerting) client-side packages: - `@kbn/response-ops-alerts-table` - `@kbn/response-ops-alerts-apis` - `@kbn/response-ops-alerts-fields-browser` #### Initial work on improving composition and organization - Reorganizes the table code into a by-entity-type folder structure (`components/`, `hooks/`, ...) - Simplifies some components and breaks into smaller units when possible ## To verify For consumers of the alerts table: - Check that all your tables have the same behavior as before (columns, sort, row actions, bulk actions, etc.) - Check that your "shared" tables (i.e. cases alerts view in O11y and Security) have the expected configuration and behavior > [!WARNING] > This PR moves a lot of files. Git might not always recognize the correct delete/add file pairs. If you see weird diffs feel free to reach out for help! ### 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 - [ ] [Flaky Test Runner](https://ci-stats.kibana.dev/trigger_flaky_test_runner/1) was used on any tests changed ### Identify risks | Risk | Description | Severity | Mitigation | |---|---|---|---| | Table misconfigurations | Some table configurations might slightly differ from the previous AlertsTableRegistry-backed version | Low | Quick fix | ## References Closes #195180 --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Christos Nasikas <xristosnasikas@gmail.com> |
||
|
c347582ffb
|
SKA: Fix outdated eslint rules (#206961)
## Summary Some eslint rules' paths were outdated after the SKA relocations. This PR aims at fixing them. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> |
||
|
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> |
||
|
10cc89182f
|
[ResponseOps][UI] - EUI Visual Refresh integration and QA (#204352)
## Summary Closes: https://github.com/elastic/kibana/issues/202551 Closes: https://github.com/elastic/kibana/issues/202550 Closes: https://github.com/elastic/kibana/issues/202549 Closes: https://github.com/elastic/kibana/issues/202548 Meta: https://github.com/elastic/kibana/issues/202547 Summary - Buttons with `success` color have been updated to `primary` - Replaced "textSuccess" to "successText" example: Edit connector -> **Save** button <img width="756" alt="Screenshot 2024-12-17 at 15 32 14" src="https://github.com/user-attachments/assets/5d953c7a-6855-4718-98ab-fc89c516ff8d" /> - All references to renamed tokens have been updated to use the new token name - Replaced the color utility functions with EUI color tokens as they will be deprecated - All usage of color palette tokens and functions now pull from the theme - changed severity colors in Borealis Amsterdam: <img width="1931" alt="Screenshot 2024-12-18 at 11 50 51" src="https://github.com/user-attachments/assets/401465b5-b589-47c7-82a6-8211f06c13a5" /> Borealis: <img width="1925" alt="Screenshot 2024-12-18 at 11 50 06" src="https://github.com/user-attachments/assets/47ebcba7-70b0-4875-906a-55f509e0b5ca" /> --------- Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> |
||
|
98ce312ba3
|
More strict plugin type definitions (#205232)
Stricter defaults for plugin types: `Plugin` and `CoreSetup` now have empty objects as defaults instead of `object` which is assignable to anything basically. This catches some type errors, but my motivation for this is to allow something like: ```ts function createPlugin ():Plugin<MySetupContract, MyStartContract, MySetupDependencies, MyStartDependencies> { return { // look ma, no additional typing necessary setup ( coreSetup, pluginsSetup ) { }, start ( coreStart, pluginsStart ) { } } } ``` |
||
|
952436aa52
|
[SKA] Categorize outstanding shared-ux modules (#205378)
## Summary Categorize outstanding shared-ux modules for the move. |
||
|
80160cbf8f
|
Preparation for High Contrast Mode, ResponseOps domains (#202610)
## Summary **Reviewers: Please test the code paths affected by this PR. See the "Risks" section below.** Part of work for enabling "high contrast mode" in Kibana. See https://github.com/elastic/kibana/issues/176219. **Background:** Kibana will soon have a user profile setting to allow users to enable "high contrast mode." This setting will activate a flag with `<EuiProvider>` that causes EUI components to render with higher contrast visual elements. Consumer plugins and packages need to be updated selected places where `<EuiProvider>` is wrapped, to pass the `UserProfileService` service dependency from the CoreStart contract. **NOTE:** **EUI currently does not yet support the high-contrast mode flag**, but support for that is expected to come in around 2 weeks. These first PRs are simply preparing the code by wiring up the `UserProvideService`. ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [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] 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) ### 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. - [ ] [medium/high] The implementor of this change did not manually test the affected code paths and relied on type-checking and functional tests to drive the changes. Code owners for this PR need to manually test the affected code paths. - [ ] [medium] The `UserProfileService` dependency comes from the CoreStart contract. If acquiring the service causes synchronous code to become asynchronous, check for race conditions or errors in rendering React components. Code owners for this PR need to manually test the affected code paths. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> |
||
|
99aa884fa0
|
Preparation for High Contrast Mode, Analytics Experience domains (#202608)
## Summary **Reviewers: Please test the code paths affected by this PR. See the "Risks" section below.** Part of work for enabling "high contrast mode" in Kibana. See https://github.com/elastic/kibana/issues/176219. **Background:** Kibana will soon have a user profile setting to allow users to enable "high contrast mode." This setting will activate a flag with `<EuiProvider>` that causes EUI components to render with higher contrast visual elements. Consumer plugins and packages need to be updated selected places where `<EuiProvider>` is wrapped, to pass the `UserProfileService` service dependency from the CoreStart contract. **NOTE:** **EUI currently does not yet support the high-contrast mode flag**, but support for that is expected to come in around 2 weeks. These first PRs are simply preparing the code by wiring up the `UserProvideService`. ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [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] 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) ### 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. - [ ] [medium/high] The implementor of this change did not manually test the affected code paths and relied on type-checking and functional tests to drive the changes. Code owners for this PR need to manually test the affected code paths. - [ ] [medium] The `UserProfileService` dependency comes from the CoreStart contract. If acquiring the service causes synchronous code to become asynchronous, check for race conditions or errors in rendering React components. Code owners for this PR need to manually test the affected code paths. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> |
||
|
80f915f9e3
|
[embeddable] remove EmbeddableRenderer and embeddable stories (#203007)
PR starts cleaning up legacy embeddable components by removing EmbeddableRenderer, EmbedddableRoot, and embeddable story books. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> Co-authored-by: Anton Dosov <dosantappdev@gmail.com> |
||
|
6178e8295d
|
Preparation for High Contrast Mode, Core/SharedUX domains (#202606)
## Summary **Reviewers: Please test the code paths affected by this PR. See the "Risks" section below.** Part of work for enabling "high contrast mode" in Kibana. See https://github.com/elastic/kibana/issues/176219. **Background:** Kibana will soon have a user profile setting to allow users to enable "high contrast mode." This setting will activate a flag with `<EuiProvider>` that causes EUI components to render with higher contrast visual elements. Consumer plugins and packages need to be updated selected places where `<EuiProvider>` is wrapped, to pass the `UserProfileService` service dependency from the CoreStart contract. **NOTE:** **EUI currently does not yet support the high-contrast mode flag**, but support for that is expected to come in around 2 weeks. These first PRs are simply preparing the code by wiring up the `UserProvideService`. ### Checklist Check the PR satisfies following conditions. Reviewers should verify this PR satisfies this list as well. - [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] 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) ### 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. - [ ] [medium/high] The implementor of this change did not manually test the affected code paths and relied on type-checking and functional tests to drive the changes. Code owners for this PR need to manually test the affected code paths. - [ ] [medium] The `UserProfileService` dependency comes from the CoreStart contract. If acquiring the service causes synchronous code to become asynchronous, check for race conditions or errors in rendering React components. Code owners for this PR need to manually test the affected code paths. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> |
||
|
8f267fd83c
|
[ResponseOps][Rules] Move Rule Form code into @kbn/response-ops-rule-form (#198725)
## Summary Part of #195211 Moves Rule Form code out of `@kbn/alerts-ui-shared` and into a new package called `@kbn/response-ops-rule-form`. Some types and hooks that are used by multiple features or solutions are still in `@kbn/alerts-ui-shared` and have been rerouted. The bulk of Rule Form-specific code is in this new package. ### 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: Kevin Delemme <kevin.delemme@elastic.co> |
||
|
a3496c9ca6
|
[ResponseOps][Alerting] Decouple feature IDs from consumers (#183756)
## Summary This PR aims to decouple the feature IDs from the `consumer` attribute of rules and alerts. Towards: https://github.com/elastic/kibana/issues/187202 Fixes: https://github.com/elastic/kibana/issues/181559 Fixes: https://github.com/elastic/kibana/issues/182435 > [!NOTE] > Unfortunately, I could not break the PR into smaller pieces. The APIs could not work anymore with feature IDs and had to convert them to use rule type IDs. Also, I took the chance and refactored crucial parts of the authorization class that in turn affected a lot of files. Most of the changes in the files are minimal and easy to review. The crucial changes are in the authorization class and some alerting APIs. ## Architecture ### Alerting RBAC model The Kibana security uses Elasticsearch's [application privileges](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-privileges.html#security-api-put-privileges). This way Kibana can represent and store its privilege models within Elasticsearch roles. To do that, Kibana security creates actions that are granted by a specific privilege. Alerting uses its own RBAC model and is built on top of the existing Kibana security model. The Alerting RBAC uses the `rule_type_id` and `consumer` attributes to define who owns the rule and the alerts procured by the rule. To connect the `rule_type_id` and `consumer` with the Kibana security actions the Alerting RBAC registers its custom actions. They are constructed as `alerting:<rule-type-id>/<feature-id>/<alerting-entity>/<operation>`. Because to authorizate a resource an action has to be generated and because the action needs a valid feature ID the value of the `consumer` should be a valid feature ID. For example, the `alerting:siem.esqlRule/siem/rule/get` action, means that a user with a role that grants this action can get a rule of type `siem.esqlRule` with consumer `siem`. ### Problem statement At the moment the `consumer` attribute should be a valid feature ID. Though this approach worked well so far it has its limitation. Specifically: - Rule types cannot support more than one consumer. - To associate old rules with a new feature ID required a migration on the rule's SOs and the alerts documents. - The API calls are feature ID-oriented and not rule-type-oriented. - The framework has to be aware of the values of the `consumer` attribute. - Feature IDs are tightly coupled with the alerting indices leading to [bugs](https://github.com/elastic/kibana/issues/179082). - Legacy consumers that are not a valid feature anymore can cause [bugs](https://github.com/elastic/kibana/issues/184595). - The framework has to be aware of legacy consumers to handle edge cases. - The framework has to be aware of specific consumers to handle edge cases. ### Proposed solution This PR aims to decouple the feature IDs from consumers. It achieves that a) by changing the way solutions configure the alerting privileges when registering a feature and b) by changing the alerting actions. The schema changes as: ``` // Old formatting id: 'siem', <--- feature ID alerting:['siem.queryRule'] // New formatting id: 'siem', <--- feature ID alerting: [{ ruleTypeId: 'siem.queryRule', consumers: ['siem'] }] <-- consumer same as the feature ID in the old formatting ``` The new actions are constructed as `alerting:<rule-type-id>/<consumer>/<alerting-entity>/<operation>`. For example `alerting:rule-type-id/my-consumer/rule/get`. The new action means that a user with a role that grants this action can get a rule of type `rule-type` with consumer `my-consumer`. Changing the action strings is not considered a breaking change as long as the user's permission works as before. In our case, this is true because the consumer will be the same as before (feature ID), and the alerting security actions will be the same. For example: **Old formatting** Schema: ``` id: 'logs', <--- feature ID alerting:['.es-query'] <-- rule type ID ``` Generated action: ``` alerting:.es-query/logs/rule/get ``` **New formatting** Schema: ``` id: 'siem', <--- feature ID alerting: [{ ruleTypeId: '.es-query', consumers: ['logs'] }] <-- consumer same as the feature ID in the old formatting ``` Generated action: ``` alerting:.es-query/logs/rule/get <--- consumer is set as logs and the action is the same as before ``` In both formating the actions are the same thus breaking changes are avoided. ### Alerting authorization class The alerting plugin uses and exports the alerting authorization class (`AlertingAuthorization`). The class is responsible for handling all authorization actions related to rules and alerts. The class changed to handle the new actions as described in the above sections. A lot of methods were renamed, removed, and cleaned up, all method arguments converted to be an object, and the response signature of some methods changed. These changes affected various pieces of the code. The changes in this class are the most important in this PR especially the `_getAuthorizedRuleTypesWithAuthorizedConsumers` method which is the cornerstone of the alerting RBAC. Please review carefully. ### Instantiation of the alerting authorization class The `AlertingAuthorizationClientFactory` is used to create instances of the `AlertingAuthorization` class. The `AlertingAuthorization` class needs to perform async operations upon instantiation. Because JS, at the moment, does not support async instantiation of classes the `AlertingAuthorization` class was assigning `Promise` objects to variables that could be resolved later in other phases of the lifecycle of the class. To improve readability and make the lifecycle of the class clearer, I separated the construction of the class (initialization) from the bootstrap process. As a result, getting the `AlertingAuthorization` class or any client that depends on it (`getRulesClient` for example) is an async operation. ### Filtering A lot of routes use the authorization class to get the authorization filter (`getFindAuthorizationFilter`), a filter that, if applied, returns only the rule types and consumers the user is authorized to. The method that returns the filter was built in a way to also support filtering on top of the authorization filter thus coupling the authorized filter with router filtering. I believe these two operations should be decoupled and the filter method should return a filter that gives you all the authorized rule types. It is the responsibility of the consumer, router in our case, to apply extra filters on top of the authorization filter. For that reason, I made all the necessary changes to decouple them. ### Legacy consumers & producer A lot of rules and alerts have been created and are still being created from observability with the `alerts` consumer. When the Alerting RBAC encounters a rule or alert with `alerts` as a consumer it falls back to the `producer` of the rule type ID to construct the actions. For example if a rule with `ruleTypeId: .es-query` and `consumer: alerts` the alerting action will be constructed as `alerting:.es-query/stackAlerts/rule/get` where `stackRules` is the producer of the `.es-query` rule type. The `producer` is used to be used in alerting authorization but due to its complexity, it was deprecated and only used as a fallback for the `alerts` consumer. To avoid breaking changes all feature privileges that specify access to rule types add the `alerts` consumer when configuring their alerting privileges. By moving the `alerts` consumer to the registration of the feature we can stop relying on the `producer`. The `producer` is not used anymore in the authorization class. In the next PRs the `producer` will removed entirely. ### Routes The following changes were introduced to the alerting routes: - All related routes changed to be rule-type oriented and not feature ID oriented. - All related routes support the `ruleTypeIds` and the `consumers` parameters for filtering. In all routes, the filters are constructed as `ruleTypeIds: ['foo'] AND consumers: ['bar'] AND authorizationFilter`. Filtering by consumers is important. In o11y for example, we do not want to show ES rule types with the `stackAlerts` consumer even if the user has access to them. - The `/internal/rac/alerts/_feature_ids` route got deleted as it was not used anywhere in the codebase and it was internal. All the changes in the routes are related to internal routes and no breaking changes are introduced. ### Constants I moved the o11y and stack rule type IDs to `kbn-rule-data-utils` and exported all security solution rule type IDs from `kbn-securitysolution-rules`. I am not a fan of having a centralized place for the rule type IDs. Ideally, consumers of the framework should specify keywords like `observablility` (category or subcategory) or even `apm.*` and the framework should know which rule type IDs to pick up. I think it is out of the scope of the PR, and at the moment it seems the most straightforward way to move forward. I will try to clean up as much as possible in further iterations. If you are interested in the upcoming work follow this issue https://github.com/elastic/kibana/issues/187202. ### Other notable code changes - Change all instances of feature IDs to rule type IDs. - `isSiemRuleType`: This is a temporary helper function that is needed in places where we handle edge cases related to security solution rule types. Ideally, the framework should be agnostic to the rule types or consumers. The plan is to be removed entirely in further iterations. - Rename alerting `PluginSetupContract` and `PluginStartContract` to `AlertingServerSetup` and `AlertingServerStart`. This made me touch a lot of files but I could not resist. - `filter_consumers` was mistakenly exposed to a public API. It was undocumented. - Files or functions that were not used anywhere in the codebase got deleted. - Change the returned type of the `list` method of the `RuleTypeRegistry` from `Set<RegistryRuleType>` to `Map<string, RegistryRuleType>`. - Assertion of `KueryNode` in tests changed to an assertion of KQL using `toKqlExpression`. - Removal of `useRuleAADFields` as it is not used anywhere. ## Testing > [!CAUTION] > It is very important to test all the areas of the application where rules or alerts are being used directly or indirectly. Scenarios to consider: > - The correct rules, alerts, and aggregations on top of them are being shown as expected as a superuser. > - The correct rules, alerts, and aggregations on top of them are being shown as expected by a user with limited access to certain features. > - The changes in this PR are backward compatible with the previous users' permissions. ### Solutions Please test and verify that: - All the rule types you own with all possible combinations of permissions both in ESS and in Serverless. - The consumers and rule types make sense when registering the features. - The consumers and rule types that are passed to the components are the intended ones. ### ResponseOps The most important changes are in the alerting authorization class, the search strategy, and the routes. Please test: - The rules we own with all possible combinations of permissions. - The stack alerts page and its solution filtering. - The categories filtering in the maintenance window UI. ## Risks > [!WARNING] > The risks involved in this PR are related to privileges. Specifically: > - Users with no privileges can access rules and alerts they do not have access to. > - Users with privileges cannot access rules and alerts they have access to. > > An excessive list of integration tests is in place to ensure that the above scenarios will not occur. In the case of a bug, we could a) release an energy release for serverless and b) backport the fix in ESS. Given that this PR is intended to be merged in 8.17 we have plenty of time to test and to minimize the chances of risks. ## FQA - I noticed that a lot of routes support the `filter` parameter where we can pass an arbitrary KQL filter. Why we do not use this to filter by the rule type IDs and the consumers and instead we introduce new dedicated parameters? The `filter` parameter should not be exposed in the first place. It assumes that the consumer of the API knows the underlying structure and implementation details of the persisted storage API (SavedObject client API). For example, a valid filter would be `alerting.attributes.rule_type_id`. In this filter the consumer should know a) the name of the SO b) the keyword `attributes` (storage implementation detail) and c) the name of the attribute as it is persisted in ES (snake case instead of camel case as it is returned by the APIs). As there is no abstraction layer between the SO and the API, it makes it very difficult to make changes in the persistent schema or the APIs. For all the above I decided to introduce new query parameters where the alerting framework has total control over it. - I noticed in the code a lot of instances where the consumer is used. Should not remove any logic around consumers? This PR is a step forward making the framework as agnostic as possible. I had to keep the scope of the PR as contained as possible. We will get there. It needs time :). - I noticed a lot of hacks like checking if the rule type is `siem`. Should not remove the hacks? This PR is a step forward making the framework as agnostic as possible. I had to keep the scope of the PR as contained as possible. We will get there. It needs time :). - I hate the "Role visibility" dropdown. Can we remove it? I also do not like it. The goal is to remove it. Follow https://github.com/elastic/kibana/issues/189997. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Aleh Zasypkin <aleh.zasypkin@elastic.co> Co-authored-by: Paula Borgonovi <159723434+pborgonovi@users.noreply.github.com> |
||
|
61d0320c64
|
[Lens] Embeddable react refactor (#186642)
## Summary This PR contains the refactor of the Lens embeddable with the new React architecture. fix https://github.com/elastic/kibana/issues/174957 fixes https://github.com/elastic/kibana/issues/180672 **Current status**: ✅ Ready to review ### Notes for testing and reviewers Other than reworking the Lens embeddable with the new architecture this PR contains the following major changes. #### Edit flow The `Edit` flow has changed to in-line first using the new `Edit` API provided by the new system * The impact of this change can be noticed in the code on the `Canvas` case where the Custom Lens component is instructed to avoid the inline editing. In all the other cases in-line editing is enabled by default now. * Another side effect of this has been the replacement of the special `INLINE_EDIT` action id into the regular `EDIT` action. Some tests have been affected by this replacing the `clickEdit` function with the `openEditorFromFlyout` one. * The Inline editing codebase **as been reworked entirely** so make sure to stress test this side of things. #### Attribute service Another important aspect changed in this PR is the `attributeService`: this was tied to the previous Embeddable system and it is now completely skipped. The Lens wrapper around that has been reworked to be thinner and directly call the CM services. * Please make sure to test thoroughly save/load SO flows #### Transformation API (by-value <=> by-reference flow) The new system adopts the new Transformation API (who prevents the panel to fully reload on change). * Please make sure to test thoroughly Visualize library <=> by value flows * In particular moving from one type and another should change how the Panel Settings interpret "default" values to reset #### Message system Also this part of the code was partially rewritten to be more manageable ont he embeddable surface, maintaining the core functionalities. * Please make sure to test thoroughly error messages, warnings and info messages * Some scenarios to test includes * multi-layer errors (i.e. use a broken KQL query for an annotation/multi-layers). Check that the panel recovers correctly from it when resolved * Missing references * Missing dataViews * Wrong formatted SO * Configuration mistakes - check that a broken config is not saveable ### Other areas to check * Change filters in dashboard/viz and check that are correctly handled * Check drilldowns * Check that `Unsaved changes` are correctly detected * Check that the panel updates correctly on `View` mode change ## Main type changes This PR contains also some important `type` changes, here's listed: * the `query` property now explicitly supports ES|QL query type. * in `main` it used to work without type support * `LensEmbeddableInput`/`LensEmbeddableOutput` types have changed, but the type names remained the same. ## Follow ups already planned: Some enhancements have been already collected and will be addressed in a follow up [here](https://github.com/elastic/kibana/issues/195355) ### Tasks <details> <summary>Detailed list of tasks for the refactor</summary> * New embeddable factory * [x] Define visualization context * [x] Define observables to track * [x] Basic panel settings * [x] Basic edit api * [x] inspector api * [x] Library services * [x] Unified search api * [x] Basic integrations api * [x] State management api for inline editing * Publish correct observables * [x] `dataViews` * [x] `query` * [x] `filters` * [x] `dataLoading` * [x] `savedObjectId` * Actions * [x] View underlying data api * Custom renderer * [x] Basic implementation * [x] Support callbacks * [x] Support custom styling/paddings * Expose * [x] Handle searchSession * Edit * [x] Open panel in Lens editor * Inline editing * [x] rework references logic * #180726 * integrate the logic to extract filters dataViews from filters as for the first bug in #188545 * DSL flyout * [x] open flyout * [x] save * ES|QL * [x] open flyout on creation * [x] open flyout on editing * [x] save * [x] revisit mounting logic to avoid detach if possible (not possible yet) * [x] explore the integration with the new `onEdit` api method used for the inline editing~~ * [x] created panel management module and sorted it out * [x] open in Editor * [x] fix the save on return to dashboard * ~~migrate by ref to by value on inline editing~~ will do it in a follow up PR * Add from library issues * [x] Fix missing title and tags * Data loading * [x] Compute all required data params for rendering * Render the panel * [x] hook up user messaging system * [x] Merge search context * [x] Expression variables * [x] panel settings * [x] per panel time range * [x] per panel filter * test with both DSL and ES|QL mode * Reload * [x] on unified search updates * [x] on config changes * [x] on drilldown changes? * [x] on view mode change * Attributes service * [x] load from library * [x] save to library </details> ### Pending issues: <details> <summary>Detailed list of issues</summary> * [x] Unified histogram does not render in Discover * [x] Saving to library from context menu in dashboard doesn't save the title * [x] When adding a vis from the library the new panel has no title * [x] Vis disappears when opening inline editor and cancel * Create a viz, save and return to dashboard, then edit it and cancel. * Saving an edit inline doesn't apply the changes (i.e. changing the chart type) * [x] Changing the chart type on the layer panel leads to a crash * [x] Changing the chart type won't update the visualization (via both config panel or suggestions) * [x] Edit a dimension will stretch the panel to overflow the fly-out * [x] duplicating a dimension in the inline editor by drag and drop works buggy visually * When duplicating a panel, the new panel gets the same title rather than “title (copy)” * [x] by-value panels * [x] by-reference panels * [x] brushing throughout the timerange doesn’t work * [x] filtering when clicking on value doesn’t work * [x] filtering from legend doesn’t work * [x] for lens table, the sort ascending/descending actions don’t have an effect * [x] filtering doesn’t display on table either * Discover related issues * thanks to @davismcphee investigation the source of the issue seems to be related to the way the `abortController` is managed in the new embeddable implementation as Discover is relying on that. * [x] needs to investigate for a fix that restores the previous behaviour of the `abortController` management * [x] the hits total count is not in sync with the chart/table now * [x] Change chart type via suggestion panel when inline editing in Discover doesn't update the chart * [x] Dirty panel issue (see @nickofthyme 's [comment](https://github.com/elastic/kibana/pull/186642#discussion_r1792659477) ) * [x] `Unsaved changes` issue (see @mbondyra [comment](https://github.com/elastic/kibana/pull/186642#discussion_r1795384587)) * [x] Multiple errors not rendered correctly in panel when blocking (i.e. missing field - `lens-message-list-trigger` related) * [x] recover from a blocker error required 2 renders * Missing SO error should not be handled for the custom render component (legacy behaviour) but should be correctly handled for dashboard (will be handled in a follow up PR given that is broken on `main` too) * [x] Too many requests on Unified Histogram when in Discover (3 vs 2) * [x] Too many request on slow queries for Unified Histogram (2 vs 1) * [x] Annotations preview issues (chart rendering with height `0px`) * [x] `uuid` not propagated correctly * [x] another flavour of this was `id` not propagated correctly into the `data-test-embeddable-id` attribute * [x] Dispatch correctly the `render` events * [x] refresh interval does not propagate thru the Lens custom component in Discover (thanks to @jughosta to sort this out ) </details> --------- Co-authored-by: Marta Bondyra <4283304+mbondyra@users.noreply.github.com> Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Marco Vettorello <vettorello.marco@gmail.com> Co-authored-by: Marta Bondyra <marta.bondyra@elastic.co> Co-authored-by: Bhavya RM <bhavya@elastic.co> Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co> |
||
|
83a9acd79b
|
Remove deprecated usages of EuiFormRow 's display="columnCompressedSwitch" prop (#198709)
## Summary This prop option has been deprecated as of https://github.com/elastic/eui/pull/7968. `display="columnCompressed"` now automatically accounts for EuiSwitches (via `:has` CSS) and the extra prop option is no longer needed. ### 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 - [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)) --------- Co-authored-by: Marta Bondyra <4283304+mbondyra@users.noreply.github.com> |
||
|
730f4c9d2a
|
Address some of the no_group_crossing dependencies (#198261)
### Summary This PR relocates some plugins and packages that are incorrectly categorised, aiming at reducing inter-solution dependencies. It also fixes some incorrect import statements that introduce unnecessary dependencies with other components. --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Maryam Saeidi <maryam.saeidi@elastic.co> |
||
|
5c2df6347d
|
[Response Ops][Rules] Add New Rule Form to Stack Management (#194655)
## Summary Enables and adds the new rule form to stack management. We are only going to turn this on for stack management for now until we are confident that this is fairly bug free. ### To test: 1. Switch `USE_NEW_RULE_FORM_FEATURE_FLAG` to true 2. Navigate to stack management -> rules list 3. Click "Create rule" 4. Assert the user is navigated to the new form 5. Create rule 6. Assert the user is navigated to the rule details page 7. Click "Edit" 8. Edit rule 9. Assert the user is navigated to the rule details page 10. Try editing a rule in the rules list and assert everything works as expected We should also make sure this rule form is not enabled in other solutions. ### 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 --------- Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> Co-authored-by: Christos Nasikas <christos.nasikas@elastic.co> |
||
|
54659e8ae0
|
[Response Ops][Rule Form V2] Rule form v2: Actions Modal and Actions Form (#187434)
## Summary Issue: https://github.com/elastic/kibana/issues/179105 Related PR: https://github.com/elastic/kibana/pull/180539 Final PR of the rule actions V2 PR (2/2 of the actions PRs). This PR contains the actions modal and actions form. This PR depends on https://github.com/elastic/kibana/pull/186490. I have also created a example plugin to demonstrate this PR. To access: 1. Run the branch with yarn start --run-examples 2. Navigate to http://localhost:5601/app/triggersActionsUiExample/rule/create/<ruleTypeId> (I use .es-query) 3. Create a rule 4. Navigate to http://localhost:5601/app/triggersActionsUiExample/rule/edit/<ruleId> with the rule you just created to edit the rule <img width="1236" alt="Screenshot 2024-07-02 at 5 15 51 PM" src=" |
||
|
6689169687
|
Move @elastic/kibana-gis ownership to @elastic/kibana-presentation (#192521)
## Summary The legacy `@elastic/kibana-gis` team is now a part of `@elastic/kibana-presentation`. So we should move ownership of all code to the correct team. |
||
|
a71c9ba38a
|
Added scope field to features config. (#191634)
## Summary Kibana needs to more tightly control the set of visible features within a space, in order to support the new solution-based navigation. Added `scope` field to the features configuration. This enhancement is intended to prevent new features from appearing in Space Visibility Toggles. ### 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 __Fixes: https://github.com/elastic/kibana/issues/191299__ ## Release Note Added `scope` field to the features configuration. This enhancement is intended to prevent new features from appearing in Space Visibility Toggles. --------- Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> |
||
|
240c4ff15b
|
[react@18] More breaking type fixes (should be the last pr) (#192266)
## Summary Part of https://github.com/elastic/kibana/issues/138222 in @types/react@18 types https://github.com/DefinitelyTyped/DefinitelyTyped/pull/56210. This PR addresses a bunch of remaining fixes **(hopefully the last mass ping PR like this)** The most common are: ### 1 Objects are no longer considered a valid ReactNode In types@17 the ReactNode typing was too soft, it allowed objects and functions being passed as ReactNode, e.g. ``` let obj: React.ReactNode = {}; let func: React.ReactNode = () => {}; ``` This was by mistake, and this PR mutes most of such cases by simply casting to a `string` or `ReactNode`. In some cases, it is worth to follow up and address the raised issues in a better way (see in comments) ```diff function MyComponent() { const error: string | Error = 'Error' return ( <div> - {error} + {error as string} </div> ) } ``` Most common problems are related to rendering errors, where it could be `string | Error` object rendered directly as a ReactNode. Most often it is related to alerting framework: ``` export interface RuleFormParamsErrors { [key: string]: string | string[] | RuleFormParamsErrors; } ``` Not sure if there is a better fix then casting, surely not short-term. ### 2 More `useCallback` implicit any fixes Follow up to https://github.com/elastic/kibana/pull/191659 ### 3 `EuiSelect` doesn't have a placeholder prop In a couple of places, the `placeholder` prop was removed. This is because react types were updated and `placeholder` was removed from the base HTML element, so it highlighted places where `placeholder` prop was redundant |
||
|
9e8244f470
|
[Lens] Chart switch redesign (#187475)
## Summary 1. The main change is chart switch redesign: <img width="401" alt="Screenshot 2024-08-26 at 15 08 50" src="https://github.com/user-attachments/assets/a2da17d5-b068-4eeb-9723-0b64cc6cbcf0"> 2. Toolbar changes for most of the visualization (refer to design files) <img width="930" alt="Screenshot 2024-08-26 at 15 09 14" src="https://github.com/user-attachments/assets/7f76aed3-99d8-438b-b304-91042c99381d"> <img width="942" alt="Screenshot 2024-08-26 at 15 08 56" src="https://github.com/user-attachments/assets/5bed1916-8723-42b5-8f7d-4b363c5736c9"> #### Subtasks - reorders the elements in the charts switch - redesigns chart switch visually - adds deprecated group (metric) - changes the add subtype layer menu - adds description to chart switch - subselect for bar/gauge visualizations - adds border to workspace panel - changes `boxesHorizontal` icon to `boxesVertical` Resolves https://github.com/elastic/kibana/issues/179260 also fixes https://github.com/elastic/kibana/issues/182677 switching between chart types |
||
|
2d1d592a3b
|
[react@18] Fix useCallback breaking type changes (#182344)
## Summary Prep work for React@18 bump https://github.com/elastic/kibana/issues/138222 In React@18 `useCallback` types has changed that introduced breaking changes: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/46691 Fixed using: https://github.com/eps1lon/types-react-codemod?tab=readme-ov-file#usecallback-implicit-any **Tried to do my best with fixing the types, but if you disagree or have a better idea how it should be solved feel free to suggest changes or commit directly to the branch 🙏** --------- Co-authored-by: Sergi Massaneda <sergi.massaneda@elastic.co> Co-authored-by: Sébastien Loix <sabee77@gmail.com> Co-authored-by: Nick Peihl <nick.peihl@elastic.co> Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co> Co-authored-by: Felix Stürmer <felix.stuermer@elastic.co> Co-authored-by: nickofthyme <nicholas.partridge@elastic.co> Co-authored-by: Davis McPhee <davis.mcphee@elastic.co> Co-authored-by: Vitalii Dmyterko <92328789+vitaliidm@users.noreply.github.com> Co-authored-by: Maxim Palenov <maxim.palenov@elastic.co> Co-authored-by: Christos Nasikas <christos.nasikas@elastic.co> Co-authored-by: Anton Dosov <anton.dosov@elastic.co> |
||
|
5859c69bb0
|
chore(NA): upgrade typescript into v5.1.6 (#186437)
This PR bumps the Typescript version used on Kibana into v5.1.6. The full set of changes can be found [here](https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/) and [here](https://devblogs.microsoft.com/typescript/announcing-typescript-5-1/). In order to make assumptions over the codebase and all the type of errors I choose to mark the failures with `@ts-expect-error` and let each team decide how to handle it. There is a list below with the files (and teams those belong to) where the annotations were added. If each team could provide help of fixing the ones under their domain it would be fantastic. It can be done in this PR or in subsequent ones. Here it goes the list for follow up: @elastic/kibana-core - [ ] [packages/core/http/core-http-router-server-internal/src/versioned_router/core_versioned_route.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e700e121788da393439b09ccb5dcd68c9fe4bb6b2663f84509e1fc0cdbcfdba9) - [ ] [packages/core/notifications/core-notifications-browser-internal/src/toasts/global_toast_list.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-9418144cd53fe450cb5a924b05348ea61af12d7d95a28dda6a22b9058540d11e) @elastic/kibana-data-discovery - [ ] [packages/kbn-es-query/src/es_query/from_filters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d58aad3fd7135aae181c5cf501f48a27de1c08656e80933d91c00ac9b96033a6) - [ ] [src/plugins/field_formats/common/constants/base_formatters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8864ffe2a1866a9c2c0a535057e4e1c39bb4507ffdb2866f23fb6f66b0211cf2) - [ ] [src/plugins/field_formats/common/converters/color.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-dad100b5dbd1511598d1b1e01cf6043dd3e5adb2c59ea2f2da5ddc8f0da811f4) - [ ] [src/plugins/field_formats/common/utils/geo_utils.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6e35aec0659afb9e67a2767219e792f918bdbd68e0d710c9cb62aa1bce3e8f58) @elastic/obs-knowledge-team - [ ] [packages/kbn-eslint-plugin-i18n/rules/formatted_message_should_start_with_the_right_id.ts](https://github.com/elastic/kibana/pull/186437/files#diff-50a9be879e214228ea2f620e25d170878b91083624f195b52bc3546dd7513863) - [ ] [packages/kbn-eslint-plugin-i18n/rules/i18n_translate_should_start_with_the_right_id.ts](https://github.com/elastic/kibana/pull/186437/files#diff-246cad304aec6af53e6d8f5b1a94631cced481a18842b792fd678468b91b4a97) - [ ] [packages/kbn-eslint-plugin-i18n/rules/strings_should_be_translated_with_formatted_message.ts](https://github.com/elastic/kibana/pull/186437/files#diff-359f9b0e4e216505f6c4be2202ce3e40c796760735ee21f075c7f364da32c830) - [ ] [packages/kbn-eslint-plugin-i18n/rules/strings_should_be_translated_with_i18n.ts](https://github.com/elastic/kibana/pull/186437/files#diff-461be6c6ed7c6dca2880b5bb4a0b46630d92ba15ae053ab5beda06461e28334c) - [ ] [packages/kbn-eslint-plugin-telemetry/rules/event_generating_elements_should_be_instrumented.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ecc2ed1c091c51e909b8be3d1bc44b51bf074028dc36eefd7c18511f2a677a70) @elastic/kibana-esql - [x] [packages/kbn-esql-validation-autocomplete/src/definitions/functions.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d45c72297609bbbbde2e3ad05e7f2d01bc3641ebcaed291e2608835bbc488cb5) @elastic/kibana-management - [ ] [packages/kbn-management/settings/components/field_row/description/description.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-c8721036237a95d1884e92898998cd074b1ce11bd47be544a5555508df281131) - [ ] [x-pack/plugins/upgrade_assistant/public/application/components/es_deprecations/deprecation_types/reindex/flyout/progress.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-643342b210c85ad16ce48332f8fc4a897f04b360478e0dc85c66764c8dfa2fea) @elastic/kibana-security - [x] [packages/kbn-user-profile-components/src/user_profiles_selectable.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-56f068e23fe0c835822be949e6d5a4b1c3e4c6122674d85edcd755247e8ba5b3) @elastic/appex-sharedux - [ ] [src/plugins/bfetch/public/test_helpers/xhr.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3cbb61cec7f75035395d5839574750039ed9f0c426b4cdc30101584f20679844) @elastic/kibana-visualizations - [x] [src/plugins/chart_expressions/expression_partition_vis/public/__stories__/shared/config.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5b63b4a12b145aa1dd32502a443b78d5d34032b7d1e81c2f2ddc95018ec220a2) - [x] [src/plugins/data/common/search/tabify/tabify.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0e813655cdaa11de2798a95e96d1681a3ba3733cd44d6e3ded92e42923a4f8a4) - [x] [src/plugins/data/public/search/session/sessions_mgmt/lib/get_expiration_status.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8e383e294d0beacaac5a59bbfb71db2eb34ec19bb17110558892dba4e78c9e5c) - [x] [src/plugins/expressions/common/test_helpers/expression_functions/sum.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ecd1d48194777bcf42b216ad9175ed7d27ab42b7534e58e398bd4f69910c7fd0) - [x] [src/plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts](https://github.com/elastic/kibana/pull/186437/files#diff-83d6ea7d32a99c1655754bd7aa2b2bd18379336dfd08587d05c3879d94466ca5) - [x] [src/plugins/vis_types/heatmap/public/editor/components/heatmap.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-2ccd19b338a26292b3183fedce9ab9f0e0278c70478fe120b4bc8eaf708c1f30) @elastic/kibana-presentation - [ ] [src/plugins/presentation_util/public/components/floating_actions/floating_actions.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-d9ec87fc178c67a0666faed87b03608fff2de870d3a7426b7d6f32ea467c5efe) @elastic/response-ops - [ ] [x-pack/examples/triggers_actions_ui_example/public/connector_types/system_log_example/system_log_example_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-844871414a2b89346d98713776d43b6b7748fd09d9bfa29df8db039ef7029c17) - [ ] [x-pack/plugins/alerting/public/services/maintenance_windows_api/transform_maintenance_window_response.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8ce933ffaafd5cbb9be4fcebceb103354c6ccef3bf903472bab00aa63df05fbf) - [ ] [x-pack/plugins/alerting/server/alerts_client/lib/build_updated_recovered_alert.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-9c6f9f83811a8109a98c135c3c38d5e1f5f4b0ed43c50191c5f3356904f98743) - [ ] [x-pack/plugins/alerting/server/application/maintenance_window/methods/archive/archive_maintenance_window.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b5b5bc1b7dcd9f9231fa3106ec0249503878c6fa08beddcdad386bff2de817fd) - [ ] [x-pack/plugins/alerting/server/application/maintenance_window/methods/finish/finish_maintenance_window.ts](https://github.com/elastic/kibana/pull/186437/files#diff-be29c2527f016d3e0aa6f7114497b27f01328ba97fe4b8c10687e26274837eab) - [ ] [x-pack/plugins/alerting/server/application/maintenance_window/methods/update/update_maintenance_window.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a41ce34fdcee991ff0dadb69b1f79ffdca65a1d403ba61cbe64f9a169dbd71af) - [ ] [x-pack/plugins/alerting/server/routes/maintenance_window/apis/archive/archive_maintenance_window_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-77786589c9983c6f73738c8e5727dda1d6d28d1fd43174333f4bc1d6e01aacbb) - [ ] [x-pack/plugins/alerting/server/routes/maintenance_window/apis/find/find_maintenance_windows_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-390a8118418248ce86b341bfc983bffe766cde153f3e0af1e50ee3c782d14f32) - [ ] [x-pack/plugins/alerting/server/routes/maintenance_window/apis/finish/finish_maintenance_window_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-597891acbb306fdf24fee4a354565e528d48922193bac3a9df2431c242f58801) - [ ] [x-pack/plugins/alerting/server/routes/maintenance_window/apis/get/get_maintenance_window_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-424da348dc22e6e40122808ec0dc3be4308311b8b6cf2980612cfe32035bc4b1) - [ ] [x-pack/plugins/alerting/server/routes/maintenance_window/apis/get_active/get_active_maintenance_windows_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-2e05b51211b744c4c62f4aa6114f05ae25a58bc7cc9104acb696c31dc079923a) - [ ] [x-pack/plugins/alerting/server/routes/maintenance_window/apis/update/update_maintenance_window_route.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5db167da59aa1095e7addc5a212e5b6d8eb56510ee2e8380d756518b9ed01391) - [ ] [x-pack/plugins/alerting/server/rules_client/common/snooze_utils.ts](https://github.com/elastic/kibana/pull/186437/files#diff-00934c9c89eafd3ba6f4dadf6eeb722ffcacfa3d2938d0ad87e0f94d7b74b2c7) - [x] [x-pack/plugins/cases/public/components/create/utils.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ee83142469c3a5f01ca2d451d265103d37c6aa674871134274ad19ab524d7bdc) - [x] [x-pack/plugins/cases/public/components/system_actions/cases/cases_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-48a40eef52d23999ba7e8f7be4a45b1888e9e23a7e7e2274005106fa512150a5) - [ ] [x-pack/plugins/stack_alerts/public/rule_types/components/index_select_popover.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-b5f375535c5a86461c05426871068165875dcf48397cb6e9bd8fbd28887ae01f) - [ ] [x-pack/plugins/stack_alerts/public/rule_types/components/source_fields_select.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-590e8e70a0107e1636381c82d9c220f94cfc6f9eb989ff0cf4bf1ab1dbf910ef) - [ ] [x-pack/plugins/stack_alerts/public/rule_types/es_query/expression/es_query_expression.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-f8d25e40e49c3e4c349180c07884ab6c32f0632a8e7942e38d0c807ea121ac31) - [ ] [x-pack/plugins/stack_alerts/public/rule_types/es_query/expression/esql_query_expression.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-ac4ad1bbcbfd2fea2717f4b5a66026c718e3b1798b9c8ec8de6788a177ee065f) - [ ] [x-pack/plugins/stack_alerts/public/rule_types/es_query/expression/expression.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7e37c942e8193d2a6d98ec3f700b4ccd9776e8ca486236db66c2c12003dcba3e) - [ ] [x-pack/plugins/stack_alerts/public/rule_types/geo_containment/rule_form/rule_form.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-9aea6a712f0c62b3d537198adb76e919e1d5dcc0ca9a677f5209fb242b711a1c) - [ ] [x-pack/plugins/stack_alerts/public/rule_types/threshold/expression.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-98fa95151dfe9b742538a07e55b155ad1ae21a4d0689855fb81777fcb096fa1a) - [x] [x-pack/plugins/stack_connectors/public/connector_types/cases_webhook/webhook_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-ac3cca4b207b481d51a9d0cd7ea40b6cad60fa3bc65b3f468390dc6c17079e6b) - [x] [x-pack/plugins/stack_connectors/public/connector_types/email/email_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-df59d955c778b3600f2cc6ab081e23e81111c551a47b49fea17248e361179bad) - [x] [x-pack/plugins/stack_connectors/public/connector_types/es_index/es_index_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7e43267b14964eac9970e05136122295c94b5b5e3eedc68f2669aa341f5191bb) - [x] [x-pack/plugins/stack_connectors/public/connector_types/jira/jira_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-6cd6e35801151cdb651ba089a9894d3bd7d11c14f5043e3fec9dcbd5d8cecf84) - [x] [x-pack/plugins/stack_connectors/public/connector_types/lib/servicenow/helpers.ts](https://github.com/elastic/kibana/pull/186437/files#diff-26ec61b32587b6e6ecae3729aa4aa21b686a98a913f0f9cdc826201e8ccfbb3d) - [x] [x-pack/plugins/stack_connectors/public/connector_types/opsgenie/close_alert.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-0cc8ad009225394e3646aec29f40ca6b6946f4bfde6c785b574cae2c3b593509) - [x] [x-pack/plugins/stack_connectors/public/connector_types/opsgenie/create_alert/index.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3242adfea72e5c25b06189b36e4ee140a79925f410954e79d653680869a3b8a3) - [x] [x-pack/plugins/stack_connectors/public/connector_types/pagerduty/pagerduty_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-e7198fbd573a6103e3f0eaeda983901085a86a49b4d1d6a3888efd4e54a45861) - [x] [x-pack/plugins/stack_connectors/public/connector_types/resilient/resilient_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-75d81bebd5447946d113884982c084df04022df804a6fa349e3cf1772f77fa90) - [x] [x-pack/plugins/stack_connectors/public/connector_types/servicenow_itom/servicenow_itom_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7a5300760de357f71a6721045455121deb11b67579fbb5ad17b0f1a579b9127d) - [x] [x-pack/plugins/stack_connectors/public/connector_types/servicenow_itsm/servicenow_itsm_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-320b09f607fa17dd1bcd84672c8f2f4ff34bc05b981c08cb8db78e1971fad43d) - [x] [x-pack/plugins/stack_connectors/public/connector_types/servicenow_sir/servicenow_sir_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-fc487b524b7ac74a468beb79134d0c2a07eef7e82dc5e138f082e61aedcca9b5) - [x] [x-pack/plugins/stack_connectors/public/connector_types/slack_api/slack_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-01413de2d6e5de199a018b16ded374fd9f12790e4bf4e51ac01ed627915fec0d) - [ ] [x-pack/plugins/task_manager/server/monitoring/task_run_statistics.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b1a95078ab7e8f39fb4934879f96292ceb6f82a5bc6bacbca529c4a5444e1665) - [ ] [x-pack/plugins/task_manager/server/task_type_dictionary.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b99902e9dfa7d87ad6bf02ee4cda92aad211fd3ecff70ab4393f1a1d92fd9fd9) - [x] [x-pack/plugins/triggers_actions_ui/public/application/sections/rule_form/rule_form_consumer_selection.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3610e524bbb22f9e7ff338f5d26ec772a6535ae624b3d624afdad42643206864) - [x] [x-pack/plugins/triggers_actions_ui/public/common/expression_items/for_the_last.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-f943db0c37a2e9db987e0471ab1e4e05547b05bd1921944725044127123121b9) - [x] [x-pack/plugins/triggers_actions_ui/public/common/expression_items/group_by_over.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7458115ab3dc2dd6466775bad827b1dfd8e34d1c4159a188abf6846d37db3dc1) - [x] [x-pack/plugins/triggers_actions_ui/public/common/expression_items/of.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3314770802ed035c53a28a0ecc61701f968ac30bb06dcb84290caadab750f1f3) - [x] [x-pack/plugins/triggers_actions_ui/public/common/expression_items/threshold.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-e75015dc2f0470d4df164a2a67dd6741614b39713f96aa9335c3c2ea30300110) - [x] [x-pack/plugins/triggers_actions_ui/public/common/expression_items/value.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-8f76afb4de6908d9acf5b5e993ca11f23e02836d630be7a0849aa9bf30c39018) - [ ] [x-pack/test/alerting_api_integration/spaces_only/tests/alerting/group1/event_log.ts](https://github.com/elastic/kibana/pull/186437/files#diff-70de70757d814d10d09f2ee53aff8409c74d87627732656db8a192a9dc9b44a9) @elastic/ml-ui - [x] [x-pack/packages/ml/aiops_log_rate_analysis/get_log_rate_analysis_type.ts](https://github.com/elastic/kibana/pull/186437/files#diff-91eed9746e6e89d160dd171be309a72f91c96c5e19068e5afc96961b2d65284d) - [x] [x-pack/packages/ml/query_utils/src/build_base_filter_criteria.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e755af1f2f0047f4496a94e6b88d005c34de16a9588f3faba5ef5af7e936ebf2) - [x] [x-pack/plugins/aiops/public/components/log_rate_analysis/log_rate_analysis_content/log_rate_analysis_content.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-d21e8cc4c066ea812d2572e693a8490104349261d376275070eaebee0024e18d) - [x] [x-pack/plugins/ml/public/application/explorer/explorer_charts/utils/draw_anomaly_explorer_charts_cursor.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5fe3935901f2e0ce9dc834841cd7ed10fe093a83500dd5a8e5e1c58df10ee575) - [x] [x-pack/plugins/ml/public/application/jobs/jobs_list/components/datafeed_chart_flyout/datafeed_chart_flyout.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-d1103856290d202f43808e560babeeaaf90f1d50b198315f8117f6b9ed78b7d5) - [x] [x-pack/plugins/ml/public/embeddables/job_creation/common/job_details.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-0de793fefb4d9f2483f07b1ca700f81abe3a5e8cedd18edee5d53038734721be) - [ ] [x-pack/plugins/ml/scripts/apidoc_scripts/schema_extractor/schema_extractor.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6b4df415cc22862a0f51e0efc5b3ffcd6159dfdedfa4e58d4b8119c0eefa11e0) - [ ] [x-pack/plugins/ml/server/lib/alerts/register_anomaly_detection_alert_type.ts](https://github.com/elastic/kibana/pull/186437/files#diff-71fccaf2dd3c66b6270dc3bf286761d17d83648677044bdbcda547f114293f96) - [x] [x-pack/plugins/ml/server/models/job_service/jobs.ts](https://github.com/elastic/kibana/pull/186437/files#diff-117572abd5e46abdd015659b9d42d3f567ce194da876b8543c1d7b1b00a31b91) - [x] [x-pack/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-25e5edc62ee2a7768685332bd3b716a2a2bfcc6aa4e113169af27e5287364057) @elastic/search-kibana - [ ] [x-pack/plugins/enterprise_search/public/applications/analytics/components/add_analytics_collections/add_analytics_collection_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-932dcfd135690493a73b5ea7672920675cf597533ed9f5caa8c4f5813217b95d) - [ ] [x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_collection_view/analytics_collection_data_view_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b6c2a1dd70abcb1ce0b8aa2a4ee7d758d6d8d82acb6d1c1270ddae3065b23db3) - [ ] [x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_collection_view/analytics_collection_explore_table_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-feb52400dba49e5b7a64a214458fc3a7af242878368170d9df87921024439e28) - [ ] [x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_collection_view/analytics_collection_integrate/api_key_modal/generate_analytics_api_key_modal.logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-807ec904b8b0ee7ec6916501ddc9eaa01adc1c4c83288a76cf652f69582ea050) - [ ] [x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_collection_view/analytics_collection_toolbar/analytics_collection_toolbar_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7272575e7ba5c7acaa19bdbdd4608e193dc676b94cd9944c06f5bc69c6cf0930) - [ ] [x-pack/plugins/enterprise_search/public/applications/analytics/components/analytics_overview/analytics_collections_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0d1c4d240c45aebaa735bb7f06d5311c05274b601c409b2b14454f95d1325621) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/app_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5f62c8eeaf06710e3a73e32a3ac2e687685740ae3e04b73cdf8299d816a75d73) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/analytics/analytics_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-16164984dc6aaccd02e30597a3f3669856a906b10b1c5d539e1d3714647cba47) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/api_logs/api_log/api_log_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-2637e43c60989203ca6007a541e7e4a8ce637158427e4b80cce937e29373fe2b) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/api_logs/api_logs_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-433210633b338895845de7857f0e438d21874088b85075683525943be06b4d33) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/add_domain/add_domain_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-67625817cbc98db8ed97a966a784b7e73812210b8970e3466340ab14ccd8052c) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/crawl_custom_settings_flyout/crawl_custom_settings_flyout_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-050fc78aeb732e9c72fe784e4822a1999164f35bb63feb4ad84dab84a1b3d0a2) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/crawl_select_domains_modal/crawl_select_domains_modal_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-19470ae1eef70cf5a310e85832fb055848dcbd7b27c6a8cf6e3b27bb6e672632) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/domains_table.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-017cd4c0cf7059b8efbec69079694c07d87b7e3b6afc2a840b45acbd805334ee) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/manage_crawls_popover/automatic_crawl_scheduler_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3715fa4fa3d67127e3e30f9809649b0ca5b1f52034aef7cf5f72cf1827066108) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/components/manage_crawls_popover/manage_crawls_popover_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-bf15713b8a2f0b15ac46684215596244e5834373621546a17f31572cf591cafa) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/crawl_detail_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-bc66c6da767c9005073a9f7fd718ef1125e463aaf6010ebb5972563635fd2710) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/crawler_domains_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5234db544b010f2c0866ba30ad84106cef537ab346713d2dd2857d4d54539eea) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/crawler_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-60292906b206600afee4fdd41bc88ae290ed94213e9b2826433367909622c0e9) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/crawler/crawler_single_domain_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-734ea0c74b844227497c80480e713c257be3f5947eefce78fecff62c44007c5a) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/credentials/credentials_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-43869ef7ea914bd42f1983a591bdf394c2de826ebf408be5ade4e369db4da173) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/components/suggestions_logic.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-22886b69abcc90af7bc5d5470b10e70fcbf838c77f7631154ed8d3628f125471) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/curation/curation_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0592460c84735fdb5f214a78a15876d4306c4fa50f5fab7cd0a60a4e74d3af05) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/curations_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b4b801ac411666b925304467a6630dddfa4167ea758c7ed0f0a30d71d0f2205f) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/views/curation_suggestion/curation_suggestion_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-52f01a7141997aa1ba474afb5424bfdf2ffbe705eee8f3a7e5baf75613086381) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/views/curations_history/components/ignored_queries_panel/ignored_queries_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-fe224d354808e91d93cf1ecbfffd3e7f970a73af0527f652dcf8948de26cba3d) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/curations/views/curations_settings/curations_settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8a003b86811ad2113cbd3e7288a2194b8e3039a4f88a481da946a6a11fed51c7) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/document_creation/document_creation_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b71ba6db13e3d95744d92bc36b3776537968e20b0df322ed45d8bdbc0c51d400) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/documents/document_detail_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-eed43fc66e965cff2495e11b5740d750729d5f328382b75541f8722f739cd811) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/engine/engine_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6b45da7bde43aa8c93f93d2c3ccb27db723eab03f12e27d08bb388f1fe329735) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/engine_creation/engine_creation_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5b8b5bb81b8590358fee0797c082b474939ed2caf853a0fb419737b10cfd4302) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/engine_overview/engine_overview_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-42121d5ecf073610bde08eff5e3290645f48f3299025301219eb49724f88f106) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/audit_logs_modal/audit_logs_modal_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-c35eadf677d47802835ee5496bbdfc62465a9729f6b6f36362dfab90c86c02f1) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/tables/meta_engines_table.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3f85ca056bb6d1b1ad8f69e12f1d7bc1c787e01359ec4f661af121f6a3aeeb37) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/tables/meta_engines_table_expanded_row.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-66cd24bdd2a0fa6ee2f5677ff4e341f3117fa1720765ba58d3e19d485eff1ef2) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/tables/meta_engines_table_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-dba03b6166512f7e454f6ab109ec7dfcb67d6b79fb8450374c310b6a054408b4) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/components/tables/test_helpers/shared_columns.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-3acd3ed82136fb64bb588acb62d372a5322b79cce544cfdcd8b51d37d3b9bc75) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/engines/engines_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0b628318fc6e35cb0c1b995e3f482c7bde5f1cfd58e8cd2fe945c73d30d0068f) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/log_retention/log_retention_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-745974ad84ae42576a8b33d46a5eac0b3cd0b46aee5d62095881986896980cea) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/meta_engine_creation/meta_engine_creation_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e98525f3bf3f2344c9c5a00657e27eb144d99725ac02aac3b1ac80aa92685881) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/multi_input_rows/multi_input_rows_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-f7e0d0d5e8b1eb37740ee5c62bbc704387c4147aa539bc853810e9085d6cb429) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/relevance_tuning/relevance_tuning_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8f932314a95e85fb9e58bdfb28af437b2d3be46a00caa15052d09619f96bf26e) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/result/result_token.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-9166a998b5c1303ade597f246e8ad70391ca5b5f4b7f8284a7fa2aac3144b718) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/result_settings/result_settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-25b0692cb22d32991d999219bcc03873f57e2284a20536a1f33d5b33e3e589ba) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/result_settings/sample_response/sample_response_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-bdc84c70ef71d4206af2a0d091358e70e832510871c5731b855788b479290af5) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/role_mappings/role_mappings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-de400b8adb84d4473ce0154f2ce70ecd375320a638098ad8762f4a1504853ffa) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/schema/reindex_job/reindex_job_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3a9731c43c4d5d826ac0cc6889945b0f0515840bc914fcebd5ba5c9babab6540) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/schema/schema_base_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1f5ebe9c073bf1d71e45f037531e2e768939269162485cd8e873175fc623826f) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/schema/schema_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-97064383218315e027edd75fb3294be638513b2dd33686a720d25dcf81480cab) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/schema/schema_meta_engine_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7a2997faf930df6eb55f8ad06257de4bc23ca82c211b7e2c5468c1d7d87539ea) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/search/search_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-17ac74c0f7616bc16c0d0ab9099e7ddc9ea3f46b0c5c889f6866c485a6c5c3e8) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/search_ui/search_ui_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0e79531841906180db0b5c56ef96308ad057a3f948abbfd291564cc895fcba68) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/source_engines/source_engines_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3d2abfe70e0c4230e85a7fd76e524b4fe38c68d99f5125a462cdee199b18d962) - [ ] [x-pack/plugins/enterprise_search/public/applications/app_search/components/synonyms/synonyms_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e1c7d85f9983b5706417342b8beedc82e8ee9ef70ba6c9d73a4300f6947660b4) - [ ] [x-pack/plugins/enterprise_search/public/applications/applications/components/search_application/add_indices_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-529444e45111837f6bb988d9f7360628c4b8380edda3cc327cce976faabda928) - [ ] [x-pack/plugins/enterprise_search/public/applications/applications/components/search_application/connect/generate_api_key_modal/generate_search_application_api_key_modal.logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7cf47fd139eb63cfd8005e77f5443a1d003108150cb629ba18526bbbbf999384) - [ ] [x-pack/plugins/enterprise_search/public/applications/applications/components/search_application/search_application_name_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ccd01f44d22293edba039f982513ff00a4221646fcd259b341ffa1ba23b9ffb1) - [ ] [x-pack/plugins/enterprise_search/public/applications/applications/components/search_applications/create_search_application_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-665e77c4aac1ed37ef7b7a56c3a00e397e18c2328e6c3b4b197a1e638713a4ab) - [ ] [x-pack/plugins/enterprise_search/public/applications/applications/components/search_applications/search_application_indices_flyout_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5b3e4c1cee4fe88660556dcdf24c1b798a58d955ccd6cfc348c463adebc435e2) - [ ] [x-pack/plugins/enterprise_search/public/applications/applications/components/search_applications/search_applications_list_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b713b27e34672130767b511020550400f4e6a014f4074f4d133a24e574d0383c) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/__mocks__/ml_models.mock.ts](https://github.com/elastic/kibana/pull/186437/files#diff-51fc7400f9c06bfe66d9facf9c5b7ede20b950b4ea6b3bfe90483a9a9d04379e) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/api/connector/cached_fetch_connector_by_id_api_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d5bd161f3e13a935080e62fab12345cf71787141c84b51683b65203368815baf) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/api/index/cached_fetch_index_api_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8718567dee7cf1c2faac6606078846a61bb816f047f96096588c1037ea00ddd3) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/api/ml_models/cached_fetch_models_api_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e6a0231e6f62f472e2ec5e64222abc2027b350bc2c77541cc431d011865f4aec) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/connector_detail/attach_index_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-79a81a7e0a5f17c62a54b4db76b512559548272ba4ae0e6242a4e56828d980a9) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/connector_detail/connector_name_and_description_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a18949bc9ba6cacb814ea1bf1789044733606c8ce1f365f64b48b8a3d8349a86) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/connectors/connectors_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1e9e7d5ee108b305b6fa421fd0f8096293a747c2d1a4bd5940e62ce6670f7d62) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/method_connector/add_connector_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6f0bb1b86af9c43332d5336db0dca356c6d388d19194c4e6ce64c06cf19c7f3b) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/method_connector/new_connector_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-026a404fcff68f31283634f8f8171732bc933fdb3722920caab7c0be09e65510) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/new_index/new_search_index_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8619f347277f8e8aac68a2370d219ed59921a152b4b385f1f0b6054a8419cc21) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/components/generate_api_key_modal/generate_api_key_modal.logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-27a49e3c9216a34e7d4283af21aeefa7fe5ba98fc7edd27fea3f951ecb73e1bd) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/connector_name_and_description/connector_name_and_description_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cbdbbf6c4bcef9cbc55e29e9b4ce40cca08335e955fbd4b101a0e800f484a1c3) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/connector/sync_rules/connector_filtering_logic.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-7b1624e663c6afcffdcbf97e05093f14f720e6d16e1aa0cdde701571adcea63b) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/automatic_crawl_scheduler/automatic_crawl_scheduler_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-af7abfa1ebfa988adacb86c9cae8b9d0d4ec964d90018b4eb9bb16de375545d9) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawl_custom_settings_flyout/crawl_custom_settings_flyout_domain_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-060bbb12f4ecde17aee4eb0ab01dcb720241503675d55fe2632c3c1acc4f73ed) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawl_custom_settings_flyout/crawl_custom_settings_flyout_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-fb31bc222ccd5331c7f3dd1dfa7eea9bdf22d37ac97d72f4c7a67436bb810e5b) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawl_custom_settings_flyout/crawl_custom_settings_flyout_multi_crawl_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-80a226902a53fe0e17209a77741f42bd8fed172c1d2735665d0f406e1c93123c) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawl_details_flyout/crawl_detail_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-39c2166d4e03e6d636acfb64863da5d23e27e619cdda4a63e09c493da6eeb25e) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawler_configuration/crawler_configuration_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7da484a261c1c87c9fd813b5d3f5d11edbb36e8949900482dc8610610e2f1478) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawler_domain_detail/authentication_panel/authentication_panel_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-0e98ee7ecfa61c14defca8ad0ec2df6a314aedf1fc7d9eb28641977952086ba6) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawler_domain_detail/crawler_domain_detail_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d23490a2df1a98796f27c5626e28083382e9693a17ca9e8cb58418664fdae1ec) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/crawler_domain_detail/extraction_rules/extraction_rules_logic.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-aa7881c821ad64d7a975816cac4bce44a9da7133da8d36ce26fd2368e7626f8f) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/domain_management/add_domain/add_domain_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5978330358dfdc9eaa88f20d4120ada3191e86f1886238471d9118811295f833) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/domain_management/delete_domain_modal_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-2c57dd1144a4564b34e92cc6716039f97473b99350930e3575ef0518aa3934b9) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/crawler/domain_management/domains_table.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-e808b09c9d7389ca1aba6e9c5d13529ef20b428d087fdc8892296a42ad0f2e69) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/index_name_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e9988365f51f1a6c87eef4b1b127cdf111a1968ffe57b6ac33504cbc0171bd91) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/overview.logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a72173f361b17a7293bc83e94385e3bea853e9fbda62f4f5cf553c96b84d90cd) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/ml_inference_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d94da0f264e490e3486a9aa392de72c3988570b79744087f6c5724fc5d7f302c) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/test_pipeline_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-de43e776aa2fd3de8c1bd42e39fbe524ebe85b7287d9ed1355a733557ddb94b7) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout/text_expansion_callout_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-468580957fe38bbdff908443a007a97b5a817dee1cd917becdad1be90c4a3606) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/pipelines_json_configurations_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d77f51637904e4d4672b6b2d7f7ced6df73af142e8ba3fb5a074c700b5cf0fd0) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/pipelines_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-88bb9a545df5ab8a9e354d7b998f3d1ce747d8f755319c822a97a7a61cbb38e5) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/sync_jobs/sync_jobs_view_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8f35ce0853cbe2749c95d586d2c69a458e852a5931022626f03bcc021ab31a35) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_indices/indices_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-4f34d73edf0dd3ee9ae34be81bba138749fd9aebfacee306f9c9912bc18fb908) - [ ] [x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/settings/settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-9abf25b8cd7b3311c09efcf537fe708f558eaad127f9ae56552c30ec38be3dbc) - [ ] [x-pack/plugins/enterprise_search/public/applications/shared/api_logic/create_api_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b1431abb686615818a7e768d59bd8d3c00c143ff8e87501b40f06214c40b35cf) - [ ] [x-pack/plugins/enterprise_search/public/applications/shared/flash_messages/flash_messages_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cd22dcfbb976160b2eb28d781fe64ca311f72e5904e8ac139498018302a5f1da) - [ ] [x-pack/plugins/enterprise_search/public/applications/shared/http/http_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-bf7f398a500b979b731c2b1da940e0b5bf1cd7364aa918139d1a92474f77564d) - [ ] [x-pack/plugins/enterprise_search/public/applications/shared/kibana/kibana_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-71787c22cb75097f06736441c4c2bfadd2b8081ce08c25b7053d9a785449b489) - [ ] [x-pack/plugins/enterprise_search/public/applications/shared/licensing/licensing_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-f9f9a7485e95322395d0d062617ea55aa7eabb125ce79b1ddb09df7acc7b74e1) - [ ] [x-pack/plugins/enterprise_search/public/applications/shared/tables/inline_editable_table/inline_editable_table_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-69d88e8fc383a1feef672934174d857f54ae8dba8caafab8891aeac3db08732f) - [ ] [x-pack/plugins/enterprise_search/public/applications/shared/url_combo_box/url_combo_box_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e0672ab52a42dd7ef1c19a7065aa482fb2480d8ffc3dc0ede50685bbb4e23d42) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/app_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7d683e507c5a37393e10abec02e78038767132f1713de32909c329de9a7e7752) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/api_keys/api_keys_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1d201f70e2652f03ac4e07639dc8fcfcdda2f273fa1f042f81913533725bdd5e) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/add_source/add_custom_source/add_custom_source_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cce3cf43dc74255a871b9d0997af7d81f4ca4c9530e0fc6832cc7d75b907bbae) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/add_source/add_external_connector/external_connector_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ee7c158ad37746c929b42d54321e2a13260d1ff64ce72a84f29bea4300966095) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/add_source/add_source_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-60271cee3cf40f475f212f4c14e1581629fb74186e5cc0b5cc61e799a0fecd24) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/add_source/github_via_app_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-ebc66e8f6a619feb731b82fbcec83ce75f01acdcf7e32341cf645e646df1440e) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/display_settings/display_settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3b256d71f9acb2e34dd1c8364117968218ff3da43d9c51b12851d1ba2f814b68) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/schema/schema_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-56458e080954c6ce153fa9de6107398ca7fb370e8483a236da8a8d20d2a02895) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/components/synchronization/synchronization_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1e3afdd7e36facb46861631967318967f4b23e8a1dad28ef21e1d7f8f107c428) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/source_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-1ed94b9a614533248f07877178a4ba9603e5ab97815c1d607f1b626af91bb9a2) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/content_sources/sources_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-10a9c1b0ad1b25a158844418286fc32ba3a6d87d221cfd1a1fcc96ee76cbd519) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/groups/group_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-fa49b84f3486800a7b48b5bf9587198979aa6c7e9bd60ce4d704f35da822d368) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/groups/groups_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a1ca9ba9edef5d8b857987c4d9efdab1d848903626690c0f9c9b626769856385) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/oauth_authorize/oauth_authorize_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-15b23ad5ad81a95fd6fb8ca75b57a0f53a232f59f50e1862fe693d4bca13847f) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/overview/gated_form_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-246706b91ff4301b4e24195af76fdc0b84fec96414789408038d7d04fc13ea58) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/overview/overview_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e4c385f600899d70e84568281952d82ff1eaafd88d11a1c2fece6242387d9324) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/role_mappings/role_mappings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-2dff45e703ab1e1d65358bfc98811a3b440641b5c782919e6e51cfb15074ff6f) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/search_authorize/search_authorize_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cac68f64f0cea04a3ff54ffd14bc996baa7bc44b7665c8a39d9cf91fb53c2144) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/security/security_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b067f22de71e80a6cc9d6d1bb34db8f0772011130c8ac50bbacacc3572b7a45b) - [ ] [x-pack/plugins/enterprise_search/public/applications/workplace_search/views/settings/settings_logic.ts](https://github.com/elastic/kibana/pull/186437/files#diff-66ec90541af1c1d04c9bf500a858f403039f85c9c99a635288ad08def479a2cb) @elastic/fleet - [ ] [x-pack/plugins/fleet/common/services/package_to_package_policy.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-89fb3d99874cf8558d4e11b8ea7c3fb0f681663ae0e958a319663884635f1556) - [ ] [x-pack/plugins/fleet/server/services/epm/archive/parse.ts](https://github.com/elastic/kibana/pull/186437/files#diff-232dc9fd708e4f1495f59c12729834fecd84bd8af70d4c21363da14e79aa30c1) @elastic/kibana-gis - [ ] [x-pack/plugins/maps/public/classes/layers/vector_layer/blended_vector_layer/blended_vector_layer.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8a7def56c98651ea1f9876addb48421bca83b9158dd9acb70a52bf413fc398d0) - [ ] [x-pack/plugins/maps/public/classes/sources/es_geo_grid_source/es_geo_grid_source.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-69ccffa0f157cee961253b280ca40860bc2915a1fd772e15d23ceba6137cc414) @elastic/stack-monitoring - [ ] [x-pack/plugins/monitoring/server/lib/calculate_auto.ts](https://github.com/elastic/kibana/pull/186437/files#diff-22169ee25bba1c0b7cf3c8c23e24e99d96097e44e3296bda33513290ec94665d) @elastic/obs-ux-infra_services-team - [ ] [x-pack/plugins/observability_solution/apm/common/utils/flatten_object.ts](https://github.com/elastic/kibana/pull/186437/files#diff-54f4a14d914e1c4a73da2de122a1510a18d5515ad6494612b774ce74c2afc5b0) - [ ] [x-pack/plugins/observability_solution/apm/public/components/app/service_map/use_cytoscape_event_handlers.ts](https://github.com/elastic/kibana/pull/186437/files#diff-d890cf784e20969087617da20bd51703ec00ae888ba8c5bf4aeefa7b2deaf702) - [ ] [x-pack/plugins/observability_solution/exploratory_view/public/components/shared/exploratory_view/configurations/lens_columns/overall_column.ts](https://github.com/elastic/kibana/pull/186437/files#diff-b51184245cd445d7e0b85568910f22e346df3035298d0394f202089d7fe2c949) - [ ] [x-pack/plugins/observability_solution/infra/public/alerting/inventory/components/metric.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-aa69368d04202fb45b0d66c56653bdd106d29d7bdf6475400d9e12c7fe5959ea) - [ ] [x-pack/plugins/observability_solution/infra/public/alerting/log_threshold/components/expression_editor/criterion.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-fa742f7340759fa0d359a3bb4417f5d07794923b4b57a5f47f0905512966f1a1) - [ ] [x-pack/plugins/observability_solution/infra/public/alerting/log_threshold/components/expression_editor/threshold.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-5191c0e1e37ac03af1f6a4d36cda26915c76eacc892723d9bf82af4ac857fc66) - [ ] [x-pack/plugins/observability_solution/infra/server/lib/infra_ml/queries/metrics_host_anomalies.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-7d05012bd4ade42b1b471607a01d641a435baa9c48125168570dd28c38e16399) - [ ] [x-pack/plugins/observability_solution/infra/server/lib/infra_ml/queries/metrics_k8s_anomalies.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-8a437b5818061218847730f933aa481ece98a284c100d413ff7bfa3966e9ace0) - [ ] [x-pack/plugins/observability_solution/synthetics/server/synthetics_service/formatters/private_formatters/common_formatters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5e3452befed70ce7ba037850a269d7e130228bd570b94da61206c093edf24cbb) - [ ] [x-pack/plugins/observability_solution/synthetics/server/synthetics_service/formatters/public_formatters/browser.ts](https://github.com/elastic/kibana/pull/186437/files#diff-6690c075d5b3f8a2d848b62473eb836441e582a17ea6f6f85c8e63bd3f59105d) - [ ] [x-pack/plugins/observability_solution/synthetics/server/synthetics_service/formatters/public_formatters/http.ts](https://github.com/elastic/kibana/pull/186437/files#diff-845abe4f787fee19b5f0656d434835080ed0d4a405e8fb3554aea1eced106112) - [ ] [x-pack/plugins/observability_solution/uptime/server/legacy_uptime/lib/requests/get_ping_histogram.ts](https://github.com/elastic/kibana/pull/186437/files#diff-fa004e86bd085c7f13fdb42972e221ecf0e1366af018fef20aa720a356ecfba5) @elastic/obs-ai-assistant - [ ] [x-pack/plugins/observability_solution/observability_ai_assistant_app/public/rule_connector/ai_assistant_params.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-ea91d7daec5aa3f0c58d217308838b61c2ced3b7b61ec08bf4e65643c4d0f2ad) - [ ] [x-pack/plugins/observability_solution/observability_ai_assistant_app/public/utils/builders.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e69a9ff8cbd46cc3dfb0fd9d8fd166e0db4cb29baa8200cd2e6dc19b6cf48115) @elastic/search-kibana - [ ] [x-pack/plugins/search_playground/public/components/view_query/view_query_action.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-b5e8d0638619def1c273d21336793e7c611fe1a43506ea89ea858a325b1d193f) @elastic/kibana-security - [x] [x-pack/plugins/security/server/authentication/providers/anonymous.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5907942d0f69e399c09244c6b22a4454cb2de11686cfd924057ee455fd55abc4) - [x] [x-pack/plugins/security/server/lib/flatten_object.ts](https://github.com/elastic/kibana/pull/186437/files#diff-144d405c4cb888c816c967f663e02aed8b522a164c37f900ee3ea4fc496cc50a) @elastic/security-solution - [x] [x-pack/plugins/security_solution/common/api/detection_engine/rule_management/import_rules/rule_to_import.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-9c85853d1dc8a73e5d8a3774b0da907fc41ffe1a6099b2d3a9884398070eaac4) - [x] [x-pack/plugins/security_solution/common/endpoint/generate_data.ts](https://github.com/elastic/kibana/pull/186437/files#diff-12dc63d6524a714b19d487bcf75486270eea7d5d52e6d1ecdeaa935545f33ac0) - [x] [x-pack/plugins/security_solution/public/common/components/guided_onboarding_tour/tour.test.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-4511e3f72ca02b041c93cb355572b860c3ea12663b6411a7b0bf90b25c2fa3e6) - [x] [x-pack/plugins/security_solution/public/common/components/matrix_histogram/index.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-832594ad881dbd3568c22065d852c8f286d84562c4a114a194a170f535e02b50) - [x] [x-pack/plugins/security_solution/public/common/components/ml/links/create_explorer_link.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-b6cc2f3a0f043136c6162c73e964fad5d7a7f26cba993f9cee22922790060cff) - [x] [x-pack/plugins/security_solution/public/entity_analytics/components/asset_criticality_file_uploader/reducer.test.ts](https://github.com/elastic/kibana/pull/186437/files#diff-dfcea3ca5c8b630b42ad6ecc88130a025698d3c9e4f2e7c6ef1c7f9c062e3bea) - [x] [x-pack/plugins/security_solution/public/explore/users/pages/details/breadcrumbs.ts](https://github.com/elastic/kibana/pull/186437/files#diff-a803b4f0dbfb6f4bb8397333b6e0abe19c9274ec12850325dfe53c31630ba9a7) - [x] [x-pack/plugins/security_solution/public/management/services/exceptions_list/check_artifact_has_data.ts](https://github.com/elastic/kibana/pull/186437/files#diff-4611c7360f013788e308783c956e8fb60160d3ec92d55c6a5a2feff6202357d3) - [x] [x-pack/plugins/security_solution/scripts/run_cypress/parallel.ts](https://github.com/elastic/kibana/pull/186437/files#diff-9f40ced6d29c4fc2709af881680400293d8ce1bc9ebb07b9138d6d99c83c09c9) @elastic/security-threat-hunting-investigations - [x] [x-pack/plugins/security_solution/common/utils/field_formatters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-245eb47c4e23306ad09acb7dc0d67773edf102c243ce16395562918ed3ffff19) - [x] [x-pack/plugins/timelines/common/utils/field_formatters.ts](https://github.com/elastic/kibana/pull/186437/files#diff-cdd49607e6de50d407a10b887f6bf2c930cadb11663d26649b56438f9727548c) - [x] [x-pack/plugins/security_solution/public/timelines/containers/index.tsx](https://github.com/elastic/kibana/pull/186437/files#diff-c63c93153b6f7dcc62fd19575609db16b14c783d5562e901c6240de2ae19796a) - [x] [x-pack/plugins/security_solution/server/lib/timeline/utils/compare_timelines_status.ts](https://github.com/elastic/kibana/pull/186437/files#diff-e5698692c8fee698a4ca6f44c140c5ef8b65ebed6d944fc4d6c60cb8ec72ab1e) @elastic/obs-ux-management-team - [x] [x-pack/test/alerting_api_integration/observability/helpers/alerting_wait_for_helpers.ts](https://github.com/elastic/kibana/pull/186437/files#diff-3f2b755a964c21d5e0be45a480f691bbfeb07a0793488fbee2b56eeed544a06d) - [x] [x-pack/test/api_integration/apis/slos/helper/wait_for_index_state.ts](https://github.com/elastic/kibana/pull/186437/files#diff-5e8ee3140d4987b39ac117159a26b200124e3ae64a7fff896abd96ec8cc113ae) --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: nickofthyme <nicholas.partridge@elastic.co> Co-authored-by: Mark Hopkin <mark.hopkin@elastic.co> Co-authored-by: Stratoula Kalafateli <efstratia.kalafateli@elastic.co> Co-authored-by: Maxim Palenov <maxim.palenov@elastic.co> Co-authored-by: Walter Rafelsberger <walter.rafelsberger@elastic.co> Co-authored-by: adcoelho <antonio.coelho@elastic.co> Co-authored-by: Kurt <kc13greiner@users.noreply.github.com> Co-authored-by: Maryam Saeidi <maryam.saeidi@elastic.co> Co-authored-by: Jan Monschke <jan.monschke@elastic.co> |
||
|
d0b807403c
|
Improve features plugin's contract type names (#187944)
## Summary Fix https://github.com/elastic/kibana/issues/65999 Change the `features` plugin's contract type names to follow our naming convensions and to avoid needing to rename them during imports (and yeah, I'm triggering a review from 30 teams again for a type rename, just for the fun of it) --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> |
||
|
5756b299a3
|
fix: [Obs Alerts > Rules][SCREEN READER] Icons and repeated controls need unique accessible labels: 0001 (#188075)
Closes: https://github.com/elastic/observability-dev/issues/3638 ## Description Observability has a lot of icons that are used for controls and table row actions. These icons often have the same aria-label repeated across rows. While this meets the letter of SC 1.3.1: Info and Relationships, the repeated generic labels do not usually answer question what users are editing, or what users are deleting. We want to provide clear labels for each row to make the implicit relationships sighted users depend on, explicit for screen reader users. ## What was changed?: 1. `title`, `arial-label` attributes were updated for mentioned places ## Screen <img width="1546" alt="image" src=" |
||
|
762f4cd14f
|
[Response Ops][Rule Form V2] Rule Form V2: Rule Form Page and State Management (#184892)
## Summary
Issue: https://github.com/elastic/kibana/issues/179105
Related PR: https://github.com/elastic/kibana/pull/180539
Part 3/3 PRs of the new rule form. This PR adds the create and edit rule
page as well as the state management using react reducers.
I have also created a example plugin to demonstrate this PR. To access:
1. Run the branch with yarn start --run-examples
2. Navigate to
`http://localhost:5601/app/triggersActionsUiExample/rule/create/<ruleTypeId>`
(I use `.es-query`)
3. Create a rule
4. Navigate to
`http://localhost:5601/app/triggersActionsUiExample/rule/edit/<ruleId>`
with the rule you just created to edit the rule
<img width="1196" alt="Screenshot 2024-05-14 at 8 27 00 PM"
src="
|
||
|
43ce965668
|
[Response Ops][Rule Form V2] Rule Form V2: Rule Details (#183352)
## Summary
Issue: https://github.com/elastic/kibana/issues/179105
Related PR: https://github.com/elastic/kibana/pull/180539
Part 1: https://github.com/elastic/kibana/pull/183325
Part 2 of 3 PRs of new rule form. This PR depends on the code from part
1, so only merge this when part 1 has been merged. This PR extracts the
last section of the rule form, the rule details, from the original PR.
The design philosophy in the PR is to create components that are devoid
of any fetching or form logic. These are simply dumb components.
I have also created a example plugin to demonstrate this PR. To access:
1. Run the branch with yarn start --run-examples
2. Navigate to
http://localhost:5601/app/triggersActionsUiExample/rule_details
And you should be able to play around with the components in this PR:
<img width="1281" alt="Screenshot 2024-05-13 at 9 44 14 PM"
src="
|
||
|
0851587862
|
[ResponseOps] Reduce triggers actions UI bundle size (#184560)
## Summary Reduce `triggersActionsUi` bundle size by removing import from `alerting-ui-shared` index files. ### Before <img width="467" alt="Screenshot 2024-05-30 at 9 38 26 PM" src=" |
||
|
dc3f76b557
|
[Response Ops][Rule Form V2] Rule Form V2: Rule Definition (#183325)
## Summary
Issue: https://github.com/elastic/kibana/issues/179105
Related PR: https://github.com/elastic/kibana/pull/180539
Part 1 of 3 PRs of new rule form. This PR extracts the first section of
the rule form, the rule definition, from the original PR. The purpose is
to fix a few bugs (Such as improving the alert delay and the rule
schedule input validation), and also try to make the PR much smaller for
review. The design philosophy in the PR is to create components that are
devoid of any fetching or form logic. These are simply dumb components.
I have also created a example plugin to demonstrate this PR. To access:
1. Run the branch with `yarn start --run-examples`
2. Navigate to
`http://localhost:5601/app/triggersActionsUiExample/rule_definition`
And you should be able to play around with the components in this PR:
<img width="1257" alt="Screenshot 2024-05-13 at 10 10 51 AM"
src="
|
||
|
c0696a8c58
|
[EuiProvider] Fix Gis-Presentation-Visualization code (#183875)
## Summary
Fixes needed for getting CI to pass when EUI throws an error if
attempting to render a component without the EuiProvider in the render
tree.
## Detailed description
In https://github.com/elastic/kibana/pull/180819, I will deliver a
change that will cause EUI components to throw an error if the
EuiProvider context is missing. This PR comes in as part of the final
work to get all functional tests passing in an environment where EUI
will throw the error. The tied to the ["Fix 'dark mode' inconsistencies
in Kibana" Epic](https://github.com/elastic/kibana-team/issues/805) has
so far been in preparation for this.
**Reviewers: Please interact with critical paths through the UI
components touched in this PR, ESPECIALLY in terms of testing dark mode
and i18n.**
<img width="1107" alt="image"
src="
|
||
|
d0ca93a6b0
|
[EuiProvider] Fix Response-Ops code (#183876)
## Summary
Fixes needed for getting CI to pass when EUI throws an error if
attempting to render a component without the EuiProvider in the render
tree.
## Detailed description
In https://github.com/elastic/kibana/pull/180819, I will deliver a
change that will cause EUI components to throw an error if the
EuiProvider context is missing. This PR comes in as part of the final
work to get all functional tests passing in an environment where EUI
will throw the error. The tied to the ["Fix 'dark mode' inconsistencies
in Kibana" Epic](https://github.com/elastic/kibana-team/issues/805) has
so far been in preparation for this.
**Reviewers: Please interact with critical paths through the UI
components touched in this PR, ESPECIALLY in terms of testing dark mode
and i18n.**
<img width="1107" alt="image"
src="
|
||
|
7d7f9de609
|
[EuiProvider] Fix AppEx-SharedUX code (#183872)
## Summary
Fixes needed for getting CI to pass when EUI throws an error if
attempting to render a component without the EuiProvider in the render
tree.
## Detailed description
In https://github.com/elastic/kibana/pull/180819, I will deliver a
change that will cause EUI components to throw an error if the
EuiProvider context is missing. This PR comes in as part of the final
work to get all functional tests passing in an environment where EUI
will throw the error. The tied to the ["Fix 'dark mode' inconsistencies
in Kibana" Epic](https://github.com/elastic/kibana-team/issues/805) has
so far been in preparation for this.
**Reviewers: Please interact with critical paths through the UI
components touched in this PR, ESPECIALLY in terms of testing dark mode
and i18n.**
<img width="1107" alt="image"
src="
|
||
|
0780c19322
|
Add explicit children types (#181257)
## Summary Prep work for React@18 bump tl;dr In React@18 `React.FC` doesn't contain `children` anymore, so in order to make the bump easier I have decided to split the effort in multiple faces and hopefully this will make it easier for everyone This PR focuses only on adding explicit `children` declaration either by using `React.PropsWithChildren` type or by adding `children: React.ReactNode` to the existing props types https://github.com/DefinitelyTyped/DefinitelyTyped/issues/46691 --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Sergi Massaneda <sergi.massaneda@gmail.com> Co-authored-by: Marco Vettorello <marco.vettorello@elastic.co> Co-authored-by: James Gowdy <jgowdy@elastic.co> |
||
|
e4a32f8f3c
|
[SharedUX] Remove usage of deprecated React rendering utilities (#180516)
## Summary
Partially addresses https://github.com/elastic/kibana-team/issues/805
Follows https://github.com/elastic/kibana/pull/180003
These changes come up from searching in the code and finding where
certain kinds of deprecated AppEx-SharedUX modules are imported.
**Reviewers: Please interact with critical paths through the UI
components touched in this PR, ESPECIALLY in terms of testing dark mode
and i18n.**
This focuses on code within AppEx-SharedUX. [Reporting changes are
separate](https://github.com/elastic/kibana/pull/).
<img width="1107" alt="image"
src="
|
||
|
9579635c25
|
[Share Modal Redesign] Reporting Refactor Modals (#180009)
## Summary This PR refactors https://github.com/elastic/kibana/pull/179206 to have each export type be registered in Reporting and then passed into the share plugin. This PR is focused on the redesign in terms of the export modals. Test refactoring will be done in a separate PR. Partially closes https://github.com/elastic/kibana-team/issues/753 - [x] Need to refactor this PR to include @eokoneyo's general modal component - [x] Lens needs to have Export with all three report type options - to avoid circular dependencies move the Lens CSV stuff into the reporting plugin vs having it in Lens - [x] Canvas should not be affected by these changes (so the old share/reporting code has to stay for canvas) https://github.com/elastic/kibana/issues/151523 to keep in mind for the redesign Failed tests will be covered in this PR https://github.com/elastic/kibana/pull/180406 ### TO TEST Mark `share.new_version.enabled: true` in your kibana.dev.yml ### 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/packages/kbn-i18n/README.md) - [x] Any UI touched in this PR is usable by keyboard only (learn more about [keyboard accessibility](https://webaim.org/techniques/keyboard/)) --------- Co-authored-by: Eyo Okon Eyo <eyo.eyo@elastic.co> Co-authored-by: Tim Sullivan <tsullivan@users.noreply.github.com> Co-authored-by: Marco Liberati <dej611@users.noreply.github.com> |
||
|
91c8270aea
|
[Response Ops] [Alerts table] Cell context alert table performance (#180016)
## Summary This pr makes use of a new prop (and some generic memoization fixes) in 2 eui prs merged recently (https://github.com/elastic/eui/pull/7556 and https://github.com/elastic/eui/pull/7374) to improve the performance of the alerts table. Mainly, the cellContext prop is now available to consumers of the triggersActionsUi alerts table to pass in custom props in a way that allows the renderCellValue/rowCellRender functions of the various EuiDataGrid prop apis to remain referentially stable across re-renders. There are also some various changes to various hooks and props found throughout plugins that use the table to improve performance. There should be no change in functionality, just a moderate to substantial reduction in time the app spends rendering the alerts table in various scenarios. Below will be some react dev tools performance profiles, main compared to this branch, with the exact same set of generated data. Main, switching from 10-100 rows: 
## Summary This PR enhances the system action example to a) demonstrate better the connector adapter abilities and b) hide mustache variables from the UI ### 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) |
||
|
1c1e20afdb
|
Use rxjs instead of rxjs/operators (#179553)
|
||
|
26d82227d2
|
[Actions] System actions MVP (#166267)
## Summary A system action is an action that triggers Kibana workflows—for example, creating a case, running an OsQuery, running an ML job, or logging. In this PR: - Enable rule routes to accept system actions. The schema of the action is not changed. The framework deducts which action is a system action automatically. System actions do not accept properties like the `notifyWhen` or `group`. - Enable rule client methods to accept system actions. The methods accept a new property called `systemActions`. The methods merge the actions with the system actions before persisting the rule to ES. The methods split the actions from the system actions and return two arrays, `actions` and `systemActions`. - Introduce connector adapters: a way to transform the action params to the corresponding connector params. - Allow the execution of system actions. Only alert summaries are supported. Users cannot control the execution of system actions. - Register an example system action. - Change the UI to handle system action. All configuration regarding execution like "Run when" is hidden for system actions. Users cannot select the same system action twice. Closes https://github.com/elastic/kibana/issues/160367 This PR merges the system actions framework, a culmination of several issues merged to the `system_actions_mvp` feature branch over the past several months. ## Testing A system action with ID `system-connector-.system-log-example` will be available to be used by the APIs and the UI if you start Kibana with `--run-examples`. Please ensure the following: - You can create and update rules with actions and system actions. - A rule with actions and system actions is executed as expected. - Entries about the system action execution are added to the event log as expected. - Existing rules with actions work without issues (BWC). - You can perform bulk actions in the rules table to rules with actions and system actions. - License restrictions are respected. - Permission restrictions are respected. - Disabled system actions cannot be used. - Users cannot specify how the system action will run in the UI and the API. ### 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/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)) --------- Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com> Co-authored-by: Julia <iuliia.guskova@elastic.co> Co-authored-by: Zacqary Xeper <zacqary.xeper@elastic.co> Co-authored-by: Zacqary Adam Xeper <Zacqary@users.noreply.github.com> Co-authored-by: Ying Mao <ying.mao@elastic.co> Co-authored-by: Xavier Mouligneau <xavier.mouligneau@elastic.co> |
||
|
10e34e4723
|
Make the formula api optional for the lens builder (#179255)
## Summary For ES|QL charts the formula api should be redundant. This is going to make the api lighter as there is no need to import the lens plugin if you want to use the builder to create ES|QL charts. |