Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Embeddable Rebuild] Migrate ControlGroupRenderer to new embeddable framework #190561

Merged

Conversation

Heenawter
Copy link
Contributor

@Heenawter Heenawter commented Aug 14, 2024

Closes #189820

Summary

This PR converts the ControlGroupRenderer to use the new control group embeddable, which is built on the new React embeddable framework. With this conversion, there should not be any changes in user-facing behaviour - therefore, testing of this PR should be focused on ensuring that no behaviour is changed and/or broken with this refactor.

Notes to Solution Reviewers:

  • There should be minimal changes to your uses of ControlGroupRenderer - our goal here was to keep the exposed API more-or-less consistent with this refactor. Therefore, most changes are simply renames + changes of imports.
  • That being said, updateInput and getInput$ are very much tied to the old embeddable infrastructure - so while they will continue to work for now, they have been deprecated in favour of adding setters/getters for the parts of the control group state that you need to update / respond to.

Notes to Presentation Reviewer:

  • The bundle size was originally being increased by this PR, so I decided to remove a bunch of the public exports that are no longer necessary as a final cleanup - this resulted in changes to imports in a few files, but it was worth doing in this PR IMO so that we didn't have to increase the Controls bundle limit. Now, this PR shrinks the bundle size 🎉
  • I fixed a small bug with the default value of showApplySelections in this PR - since it was a one-line change, if felt like overkill to separate it out. See https://github.com/elastic/kibana/pull/190561/files#r1733253015

Checklist

For maintainers

@Heenawter Heenawter force-pushed the embeddableRebuild_fix-managed-real_2024-08-12 branch from 4580de5 to cde6b83 Compare August 15, 2024 21:55
@Heenawter
Copy link
Contributor Author

/ci

@Heenawter
Copy link
Contributor Author

/ci

@Heenawter
Copy link
Contributor Author

/ci

@Heenawter
Copy link
Contributor Author

/ci

Copy link
Member

@umbopepato umbopepato left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally on the Management > Alerts page. The controls bar works correctly, LGTM!

nit: I'm seeing this too

@Heenawter
Copy link
Contributor Author

Heenawter commented Sep 5, 2024

Note: This is blocked from merging until we can resolve the timing issues that #190273 introduced and we can undo the revert of that PR

Edit: Blocked until #192221 is merged

@kibana-ci
Copy link
Collaborator

kibana-ci commented Sep 10, 2024

💛 Build succeeded, but was flaky

Failed CI Steps

Test Failures

  • [job] [logs] FTR Configs #102 / console app console vector tiles response validation "before all" hook for "should validate response"
  • [job] [logs] FTR Configs #90 / Rules Management - Prebuilt Rules - Large Prebuilt Rules Package @ess @serverless @skipInServerlessMKI install_large_prebuilt_rules_package should install a package containing 15000 prebuilt rules without crashing

Metrics [docs]

Module Count

Fewer modules leads to a faster build time

id before after diff
controls 437 445 +8

Public APIs missing comments

Total count of every public API that lacks a comment. Target amount is 0. Run node scripts/build_api_docs --plugin [yourplugin] --stats comments for more detailed information.

id before after diff
@kbn/alerts-ui-shared 283 287 +4
@kbn/presentation-publishing 181 183 +2
controls 381 254 -127
embeddable 463 465 +2
logsExplorer 122 120 -2
total -121

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
controls 561.7KB 595.3KB +33.6KB
infra 1.6MB 1.6MB -245.0B
logsExplorer 223.4KB 223.1KB -328.0B
maps 3.0MB 3.0MB -445.0B
securitySolution 19.7MB 19.7MB -281.0B
slo 852.2KB 852.1KB -42.0B
triggersActionsUi 1.6MB 1.6MB -280.0B
total +32.0KB

Public APIs missing exports

Total count of every type that is part of your API that should be exported but is not. This will cause broken links in the API documentation system. Target amount is 0. Run node scripts/build_api_docs --plugin [yourplugin] --stats exports for more detailed information.

id before after diff
controls 28 30 +2

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff
controls 57.8KB 46.1KB -11.6KB
embeddable 71.5KB 71.7KB +121.0B
logsExplorer 27.9KB 27.6KB -207.0B
slo 24.7KB 24.6KB -140.0B
total -11.9KB
Unknown metric groups

API count

id before after diff
@kbn/alerts-ui-shared 300 303 +3
@kbn/presentation-publishing 216 218 +2
controls 390 259 -131
embeddable 573 575 +2
logsExplorer 122 120 -2
total -126

async chunk count

id before after diff
controls 17 19 +2

ESLint disabled line counts

id before after diff
controls 5 7 +2

Total ESLint disabled count

id before after diff
controls 5 7 +2

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

@Heenawter Heenawter merged commit 77e4728 into elastic:main Sep 10, 2024
25 of 26 checks passed
@Heenawter Heenawter deleted the embeddableRebuild_fix-managed-real_2024-08-12 branch September 10, 2024 17:39
logeekal added a commit that referenced this pull request Sep 11, 2024
…at (#192555)

## Summary

PR #190561 introduces a breaking change in the format of page controls
data.

Because of this there was conflict between the value of page controls
stored in local storage v/s a new format.

> [!WARNING]
> All new users of `v8.16` will encounter the error on the alerts page
because of this conflict. To resolve this, they will have to clear local
storage which not a great UX.

## Desk Testing

1. Checkout to `v8.15` branch by running `git checkout 8.15`. 
2. Go to the alert page and do some modifications to the page controls.
This store `v8.15` page controls in local storage.
    - You can, for example, delete one page control.
    - Change selected value for one page control.
    - Additionally, you can also add a custom control.
3. Checkout `main` now and repeat the above steps.
4. Your changes should be retained on the alert page and there should
not be any error.



### Checklist

Delete any items that are not applicable to this PR.

- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios

---------

Co-authored-by: Elastic Machine <[email protected]>
umbopepato added a commit that referenced this pull request Oct 4, 2024
…94785)

## Summary

#190561 introduced a breaking
change in the format of the controls embeddable configuration object
that caused usages in the Security and Stack alerts pages to break if
there was an old value saved in localStorage.

This PR makes the storage key for the alert filter controls configurable
and uses a new value for the usage in `<UrlSyncedAlertsSearchBar>`,
fixing the error in the Stack Alerts page.

## To verify

1. Checkout a revision prior to this PR
2. Create Stack rules that fire alerts
3. Visit the Stack Alerts page (should show a full-page error message,
if it doesn't see [If the page works correctly](#how-to-break))
4. Checkout this PR
5. Reload the Stack Alerts page
6. Verify that the page loads correctly

<details id="how-to-break">

<summary>If the page works correctly</summary>

You likely didn't have an old saved configuration for the controls bar
in the localStorage. In this case, create a localStorage item named
`stackAlerts.default.pageFilters` with the following content:

```json
{
  "panels": {
    "0": {
      "type": "optionsListControl",
      "order": 0,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "0",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.status",
        "title": "Status",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        },
        "selectedOptions": [
          "active"
        ],
        "hideActionBar": true,
        "persist": true,
        "hideExists": true
      }
    },
    "1": {
      "type": "optionsListControl",
      "order": 1,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "1",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.rule.name",
        "title": "Rule",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        },
        "hideExists": true
      }
    },
    "2": {
      "type": "optionsListControl",
      "order": 2,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "2",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.group.value",
        "title": "Group",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        }
      }
    },
    "3": {
      "type": "optionsListControl",
      "order": 3,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "3",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "tags",
        "title": "Tags",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        }
      }
    }
  },
  "labelPosition": "oneLine",
  "chainingSystem": "HIERARCHICAL",
  "autoApplySelections": true,
  "ignoreParentSettings": {
    "ignoreValidations": true
  },
  "editorConfig": {
    "hideWidthSettings": true,
    "hideDataViewSelector": true,
    "hideAdditionalSettings": true
  }
}
```
</details>

## References

Fixes #193565
kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Oct 4, 2024
…astic#194785)

## Summary

elastic#190561 introduced a breaking
change in the format of the controls embeddable configuration object
that caused usages in the Security and Stack alerts pages to break if
there was an old value saved in localStorage.

This PR makes the storage key for the alert filter controls configurable
and uses a new value for the usage in `<UrlSyncedAlertsSearchBar>`,
fixing the error in the Stack Alerts page.

## To verify

1. Checkout a revision prior to this PR
2. Create Stack rules that fire alerts
3. Visit the Stack Alerts page (should show a full-page error message,
if it doesn't see [If the page works correctly](#how-to-break))
4. Checkout this PR
5. Reload the Stack Alerts page
6. Verify that the page loads correctly

<details id="how-to-break">

<summary>If the page works correctly</summary>

You likely didn't have an old saved configuration for the controls bar
in the localStorage. In this case, create a localStorage item named
`stackAlerts.default.pageFilters` with the following content:

```json
{
  "panels": {
    "0": {
      "type": "optionsListControl",
      "order": 0,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "0",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.status",
        "title": "Status",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        },
        "selectedOptions": [
          "active"
        ],
        "hideActionBar": true,
        "persist": true,
        "hideExists": true
      }
    },
    "1": {
      "type": "optionsListControl",
      "order": 1,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "1",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.rule.name",
        "title": "Rule",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        },
        "hideExists": true
      }
    },
    "2": {
      "type": "optionsListControl",
      "order": 2,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "2",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.group.value",
        "title": "Group",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        }
      }
    },
    "3": {
      "type": "optionsListControl",
      "order": 3,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "3",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "tags",
        "title": "Tags",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        }
      }
    }
  },
  "labelPosition": "oneLine",
  "chainingSystem": "HIERARCHICAL",
  "autoApplySelections": true,
  "ignoreParentSettings": {
    "ignoreValidations": true
  },
  "editorConfig": {
    "hideWidthSettings": true,
    "hideDataViewSelector": true,
    "hideAdditionalSettings": true
  }
}
```
</details>

## References

Fixes elastic#193565

(cherry picked from commit ef3bc96)
kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Oct 4, 2024
…astic#194785)

## Summary

elastic#190561 introduced a breaking
change in the format of the controls embeddable configuration object
that caused usages in the Security and Stack alerts pages to break if
there was an old value saved in localStorage.

This PR makes the storage key for the alert filter controls configurable
and uses a new value for the usage in `<UrlSyncedAlertsSearchBar>`,
fixing the error in the Stack Alerts page.

## To verify

1. Checkout a revision prior to this PR
2. Create Stack rules that fire alerts
3. Visit the Stack Alerts page (should show a full-page error message,
if it doesn't see [If the page works correctly](#how-to-break))
4. Checkout this PR
5. Reload the Stack Alerts page
6. Verify that the page loads correctly

<details id="how-to-break">

<summary>If the page works correctly</summary>

You likely didn't have an old saved configuration for the controls bar
in the localStorage. In this case, create a localStorage item named
`stackAlerts.default.pageFilters` with the following content:

```json
{
  "panels": {
    "0": {
      "type": "optionsListControl",
      "order": 0,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "0",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.status",
        "title": "Status",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        },
        "selectedOptions": [
          "active"
        ],
        "hideActionBar": true,
        "persist": true,
        "hideExists": true
      }
    },
    "1": {
      "type": "optionsListControl",
      "order": 1,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "1",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.rule.name",
        "title": "Rule",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        },
        "hideExists": true
      }
    },
    "2": {
      "type": "optionsListControl",
      "order": 2,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "2",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.group.value",
        "title": "Group",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        }
      }
    },
    "3": {
      "type": "optionsListControl",
      "order": 3,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "3",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "tags",
        "title": "Tags",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        }
      }
    }
  },
  "labelPosition": "oneLine",
  "chainingSystem": "HIERARCHICAL",
  "autoApplySelections": true,
  "ignoreParentSettings": {
    "ignoreValidations": true
  },
  "editorConfig": {
    "hideWidthSettings": true,
    "hideDataViewSelector": true,
    "hideAdditionalSettings": true
  }
}
```
</details>

## References

Fixes elastic#193565

(cherry picked from commit ef3bc96)
kibanamachine added a commit that referenced this pull request Oct 4, 2024
…ror (#194785) (#194942)

# Backport

This will backport the following commits from `main` to `8.15`:
- [[ResponseOps][Alerts] Fix Stack Alerts page filter controls error
(#194785)](#194785)

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

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

<!--BACKPORT [{"author":{"name":"Umberto
Pepato","email":"[email protected]"},"sourceCommit":{"committedDate":"2024-10-04T12:44:11Z","message":"[ResponseOps][Alerts]
Fix Stack Alerts page filter controls error (#194785)\n\n##
Summary\r\n\r\nhttps://github.com//pull/190561 introduced
a breaking\r\nchange in the format of the controls embeddable
configuration object\r\nthat caused usages in the Security and Stack
alerts pages to break if\r\nthere was an old value saved in
localStorage.\r\n\r\nThis PR makes the storage key for the alert filter
controls configurable\r\nand uses a new value for the usage in
`<UrlSyncedAlertsSearchBar>`,\r\nfixing the error in the Stack Alerts
page.\r\n\r\n## To verify\r\n\r\n1. Checkout a revision prior to this
PR\r\n2. Create Stack rules that fire alerts\r\n3. Visit the Stack
Alerts page (should show a full-page error message,\r\nif it doesn't see
[If the page works correctly](#how-to-break))\r\n4. Checkout this
PR\r\n5. Reload the Stack Alerts page\r\n6. Verify that the page loads
correctly\r\n\r\n<details id=\"how-to-break\">\r\n\r\n<summary>If the
page works correctly</summary>\r\n\r\nYou likely didn't have an old
saved configuration for the controls bar\r\nin the localStorage. In this
case, create a localStorage item
named\r\n`stackAlerts.default.pageFilters` with the following
content:\r\n\r\n```json\r\n{\r\n \"panels\": {\r\n \"0\": {\r\n
\"type\": \"optionsListControl\",\r\n \"order\": 0,\r\n \"grow\":
true,\r\n \"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\":
\"0\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.status\",\r\n \"title\": \"Status\",\r\n \"hideExclude\":
true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\": true,\r\n
\"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"selectedOptions\": [\r\n
\"active\"\r\n ],\r\n \"hideActionBar\": true,\r\n \"persist\":
true,\r\n \"hideExists\": true\r\n }\r\n },\r\n \"1\": {\r\n \"type\":
\"optionsListControl\",\r\n \"order\": 1,\r\n \"grow\": true,\r\n
\"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\": \"1\",\r\n
\"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.rule.name\",\r\n \"title\": \"Rule\",\r\n
\"hideExclude\": true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\":
true,\r\n \"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"hideExists\": true\r\n }\r\n
},\r\n \"2\": {\r\n \"type\": \"optionsListControl\",\r\n \"order\":
2,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n \"explicitInput\":
{\r\n \"id\": \"2\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n
\"fieldName\": \"kibana.alert.group.value\",\r\n \"title\":
\"Group\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n },\r\n \"3\": {\r\n \"type\": \"optionsListControl\",\r\n
\"order\": 3,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n
\"explicitInput\": {\r\n \"id\": \"3\",\r\n \"dataViewId\":
\"unified-alerts-dv\",\r\n \"fieldName\": \"tags\",\r\n \"title\":
\"Tags\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n }\r\n },\r\n \"labelPosition\": \"oneLine\",\r\n
\"chainingSystem\": \"HIERARCHICAL\",\r\n \"autoApplySelections\":
true,\r\n \"ignoreParentSettings\": {\r\n \"ignoreValidations\":
true\r\n },\r\n \"editorConfig\": {\r\n \"hideWidthSettings\": true,\r\n
\"hideDataViewSelector\": true,\r\n \"hideAdditionalSettings\": true\r\n
}\r\n}\r\n```\r\n</details>\r\n\r\n## References\r\n\r\nFixes
#193565","sha":"ef3bc96e52f6c21bd1543d2cb48acef31f56022e","branchLabelMapping":{"^v9.0.0$":"main","^v8.16.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:fix","Team:ResponseOps","v9.0.0","backport:prev-major"],"title":"[ResponseOps][Alerts]
Fix Stack Alerts page filter controls
error","number":194785,"url":"https://github.com/elastic/kibana/pull/194785","mergeCommit":{"message":"[ResponseOps][Alerts]
Fix Stack Alerts page filter controls error (#194785)\n\n##
Summary\r\n\r\nhttps://github.com//pull/190561 introduced
a breaking\r\nchange in the format of the controls embeddable
configuration object\r\nthat caused usages in the Security and Stack
alerts pages to break if\r\nthere was an old value saved in
localStorage.\r\n\r\nThis PR makes the storage key for the alert filter
controls configurable\r\nand uses a new value for the usage in
`<UrlSyncedAlertsSearchBar>`,\r\nfixing the error in the Stack Alerts
page.\r\n\r\n## To verify\r\n\r\n1. Checkout a revision prior to this
PR\r\n2. Create Stack rules that fire alerts\r\n3. Visit the Stack
Alerts page (should show a full-page error message,\r\nif it doesn't see
[If the page works correctly](#how-to-break))\r\n4. Checkout this
PR\r\n5. Reload the Stack Alerts page\r\n6. Verify that the page loads
correctly\r\n\r\n<details id=\"how-to-break\">\r\n\r\n<summary>If the
page works correctly</summary>\r\n\r\nYou likely didn't have an old
saved configuration for the controls bar\r\nin the localStorage. In this
case, create a localStorage item
named\r\n`stackAlerts.default.pageFilters` with the following
content:\r\n\r\n```json\r\n{\r\n \"panels\": {\r\n \"0\": {\r\n
\"type\": \"optionsListControl\",\r\n \"order\": 0,\r\n \"grow\":
true,\r\n \"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\":
\"0\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.status\",\r\n \"title\": \"Status\",\r\n \"hideExclude\":
true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\": true,\r\n
\"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"selectedOptions\": [\r\n
\"active\"\r\n ],\r\n \"hideActionBar\": true,\r\n \"persist\":
true,\r\n \"hideExists\": true\r\n }\r\n },\r\n \"1\": {\r\n \"type\":
\"optionsListControl\",\r\n \"order\": 1,\r\n \"grow\": true,\r\n
\"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\": \"1\",\r\n
\"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.rule.name\",\r\n \"title\": \"Rule\",\r\n
\"hideExclude\": true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\":
true,\r\n \"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"hideExists\": true\r\n }\r\n
},\r\n \"2\": {\r\n \"type\": \"optionsListControl\",\r\n \"order\":
2,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n \"explicitInput\":
{\r\n \"id\": \"2\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n
\"fieldName\": \"kibana.alert.group.value\",\r\n \"title\":
\"Group\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n },\r\n \"3\": {\r\n \"type\": \"optionsListControl\",\r\n
\"order\": 3,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n
\"explicitInput\": {\r\n \"id\": \"3\",\r\n \"dataViewId\":
\"unified-alerts-dv\",\r\n \"fieldName\": \"tags\",\r\n \"title\":
\"Tags\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n }\r\n },\r\n \"labelPosition\": \"oneLine\",\r\n
\"chainingSystem\": \"HIERARCHICAL\",\r\n \"autoApplySelections\":
true,\r\n \"ignoreParentSettings\": {\r\n \"ignoreValidations\":
true\r\n },\r\n \"editorConfig\": {\r\n \"hideWidthSettings\": true,\r\n
\"hideDataViewSelector\": true,\r\n \"hideAdditionalSettings\": true\r\n
}\r\n}\r\n```\r\n</details>\r\n\r\n## References\r\n\r\nFixes
#193565","sha":"ef3bc96e52f6c21bd1543d2cb48acef31f56022e"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/194785","number":194785,"mergeCommit":{"message":"[ResponseOps][Alerts]
Fix Stack Alerts page filter controls error (#194785)\n\n##
Summary\r\n\r\nhttps://github.com//pull/190561 introduced
a breaking\r\nchange in the format of the controls embeddable
configuration object\r\nthat caused usages in the Security and Stack
alerts pages to break if\r\nthere was an old value saved in
localStorage.\r\n\r\nThis PR makes the storage key for the alert filter
controls configurable\r\nand uses a new value for the usage in
`<UrlSyncedAlertsSearchBar>`,\r\nfixing the error in the Stack Alerts
page.\r\n\r\n## To verify\r\n\r\n1. Checkout a revision prior to this
PR\r\n2. Create Stack rules that fire alerts\r\n3. Visit the Stack
Alerts page (should show a full-page error message,\r\nif it doesn't see
[If the page works correctly](#how-to-break))\r\n4. Checkout this
PR\r\n5. Reload the Stack Alerts page\r\n6. Verify that the page loads
correctly\r\n\r\n<details id=\"how-to-break\">\r\n\r\n<summary>If the
page works correctly</summary>\r\n\r\nYou likely didn't have an old
saved configuration for the controls bar\r\nin the localStorage. In this
case, create a localStorage item
named\r\n`stackAlerts.default.pageFilters` with the following
content:\r\n\r\n```json\r\n{\r\n \"panels\": {\r\n \"0\": {\r\n
\"type\": \"optionsListControl\",\r\n \"order\": 0,\r\n \"grow\":
true,\r\n \"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\":
\"0\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.status\",\r\n \"title\": \"Status\",\r\n \"hideExclude\":
true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\": true,\r\n
\"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"selectedOptions\": [\r\n
\"active\"\r\n ],\r\n \"hideActionBar\": true,\r\n \"persist\":
true,\r\n \"hideExists\": true\r\n }\r\n },\r\n \"1\": {\r\n \"type\":
\"optionsListControl\",\r\n \"order\": 1,\r\n \"grow\": true,\r\n
\"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\": \"1\",\r\n
\"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.rule.name\",\r\n \"title\": \"Rule\",\r\n
\"hideExclude\": true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\":
true,\r\n \"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"hideExists\": true\r\n }\r\n
},\r\n \"2\": {\r\n \"type\": \"optionsListControl\",\r\n \"order\":
2,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n \"explicitInput\":
{\r\n \"id\": \"2\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n
\"fieldName\": \"kibana.alert.group.value\",\r\n \"title\":
\"Group\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n },\r\n \"3\": {\r\n \"type\": \"optionsListControl\",\r\n
\"order\": 3,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n
\"explicitInput\": {\r\n \"id\": \"3\",\r\n \"dataViewId\":
\"unified-alerts-dv\",\r\n \"fieldName\": \"tags\",\r\n \"title\":
\"Tags\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n }\r\n },\r\n \"labelPosition\": \"oneLine\",\r\n
\"chainingSystem\": \"HIERARCHICAL\",\r\n \"autoApplySelections\":
true,\r\n \"ignoreParentSettings\": {\r\n \"ignoreValidations\":
true\r\n },\r\n \"editorConfig\": {\r\n \"hideWidthSettings\": true,\r\n
\"hideDataViewSelector\": true,\r\n \"hideAdditionalSettings\": true\r\n
}\r\n}\r\n```\r\n</details>\r\n\r\n## References\r\n\r\nFixes
#193565","sha":"ef3bc96e52f6c21bd1543d2cb48acef31f56022e"}}]}]
BACKPORT-->

Co-authored-by: Umberto Pepato <[email protected]>
kibanamachine added a commit that referenced this pull request Oct 4, 2024
…or (#194785) (#194943)

# Backport

This will backport the following commits from `main` to `8.x`:
- [[ResponseOps][Alerts] Fix Stack Alerts page filter controls error
(#194785)](#194785)

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

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

<!--BACKPORT [{"author":{"name":"Umberto
Pepato","email":"[email protected]"},"sourceCommit":{"committedDate":"2024-10-04T12:44:11Z","message":"[ResponseOps][Alerts]
Fix Stack Alerts page filter controls error (#194785)\n\n##
Summary\r\n\r\nhttps://github.com//pull/190561 introduced
a breaking\r\nchange in the format of the controls embeddable
configuration object\r\nthat caused usages in the Security and Stack
alerts pages to break if\r\nthere was an old value saved in
localStorage.\r\n\r\nThis PR makes the storage key for the alert filter
controls configurable\r\nand uses a new value for the usage in
`<UrlSyncedAlertsSearchBar>`,\r\nfixing the error in the Stack Alerts
page.\r\n\r\n## To verify\r\n\r\n1. Checkout a revision prior to this
PR\r\n2. Create Stack rules that fire alerts\r\n3. Visit the Stack
Alerts page (should show a full-page error message,\r\nif it doesn't see
[If the page works correctly](#how-to-break))\r\n4. Checkout this
PR\r\n5. Reload the Stack Alerts page\r\n6. Verify that the page loads
correctly\r\n\r\n<details id=\"how-to-break\">\r\n\r\n<summary>If the
page works correctly</summary>\r\n\r\nYou likely didn't have an old
saved configuration for the controls bar\r\nin the localStorage. In this
case, create a localStorage item
named\r\n`stackAlerts.default.pageFilters` with the following
content:\r\n\r\n```json\r\n{\r\n \"panels\": {\r\n \"0\": {\r\n
\"type\": \"optionsListControl\",\r\n \"order\": 0,\r\n \"grow\":
true,\r\n \"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\":
\"0\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.status\",\r\n \"title\": \"Status\",\r\n \"hideExclude\":
true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\": true,\r\n
\"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"selectedOptions\": [\r\n
\"active\"\r\n ],\r\n \"hideActionBar\": true,\r\n \"persist\":
true,\r\n \"hideExists\": true\r\n }\r\n },\r\n \"1\": {\r\n \"type\":
\"optionsListControl\",\r\n \"order\": 1,\r\n \"grow\": true,\r\n
\"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\": \"1\",\r\n
\"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.rule.name\",\r\n \"title\": \"Rule\",\r\n
\"hideExclude\": true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\":
true,\r\n \"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"hideExists\": true\r\n }\r\n
},\r\n \"2\": {\r\n \"type\": \"optionsListControl\",\r\n \"order\":
2,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n \"explicitInput\":
{\r\n \"id\": \"2\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n
\"fieldName\": \"kibana.alert.group.value\",\r\n \"title\":
\"Group\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n },\r\n \"3\": {\r\n \"type\": \"optionsListControl\",\r\n
\"order\": 3,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n
\"explicitInput\": {\r\n \"id\": \"3\",\r\n \"dataViewId\":
\"unified-alerts-dv\",\r\n \"fieldName\": \"tags\",\r\n \"title\":
\"Tags\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n }\r\n },\r\n \"labelPosition\": \"oneLine\",\r\n
\"chainingSystem\": \"HIERARCHICAL\",\r\n \"autoApplySelections\":
true,\r\n \"ignoreParentSettings\": {\r\n \"ignoreValidations\":
true\r\n },\r\n \"editorConfig\": {\r\n \"hideWidthSettings\": true,\r\n
\"hideDataViewSelector\": true,\r\n \"hideAdditionalSettings\": true\r\n
}\r\n}\r\n```\r\n</details>\r\n\r\n## References\r\n\r\nFixes
#193565","sha":"ef3bc96e52f6c21bd1543d2cb48acef31f56022e","branchLabelMapping":{"^v9.0.0$":"main","^v8.16.0$":"8.x","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["release_note:fix","Team:ResponseOps","v9.0.0","backport:prev-major"],"title":"[ResponseOps][Alerts]
Fix Stack Alerts page filter controls
error","number":194785,"url":"https://github.com/elastic/kibana/pull/194785","mergeCommit":{"message":"[ResponseOps][Alerts]
Fix Stack Alerts page filter controls error (#194785)\n\n##
Summary\r\n\r\nhttps://github.com//pull/190561 introduced
a breaking\r\nchange in the format of the controls embeddable
configuration object\r\nthat caused usages in the Security and Stack
alerts pages to break if\r\nthere was an old value saved in
localStorage.\r\n\r\nThis PR makes the storage key for the alert filter
controls configurable\r\nand uses a new value for the usage in
`<UrlSyncedAlertsSearchBar>`,\r\nfixing the error in the Stack Alerts
page.\r\n\r\n## To verify\r\n\r\n1. Checkout a revision prior to this
PR\r\n2. Create Stack rules that fire alerts\r\n3. Visit the Stack
Alerts page (should show a full-page error message,\r\nif it doesn't see
[If the page works correctly](#how-to-break))\r\n4. Checkout this
PR\r\n5. Reload the Stack Alerts page\r\n6. Verify that the page loads
correctly\r\n\r\n<details id=\"how-to-break\">\r\n\r\n<summary>If the
page works correctly</summary>\r\n\r\nYou likely didn't have an old
saved configuration for the controls bar\r\nin the localStorage. In this
case, create a localStorage item
named\r\n`stackAlerts.default.pageFilters` with the following
content:\r\n\r\n```json\r\n{\r\n \"panels\": {\r\n \"0\": {\r\n
\"type\": \"optionsListControl\",\r\n \"order\": 0,\r\n \"grow\":
true,\r\n \"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\":
\"0\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.status\",\r\n \"title\": \"Status\",\r\n \"hideExclude\":
true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\": true,\r\n
\"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"selectedOptions\": [\r\n
\"active\"\r\n ],\r\n \"hideActionBar\": true,\r\n \"persist\":
true,\r\n \"hideExists\": true\r\n }\r\n },\r\n \"1\": {\r\n \"type\":
\"optionsListControl\",\r\n \"order\": 1,\r\n \"grow\": true,\r\n
\"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\": \"1\",\r\n
\"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.rule.name\",\r\n \"title\": \"Rule\",\r\n
\"hideExclude\": true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\":
true,\r\n \"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"hideExists\": true\r\n }\r\n
},\r\n \"2\": {\r\n \"type\": \"optionsListControl\",\r\n \"order\":
2,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n \"explicitInput\":
{\r\n \"id\": \"2\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n
\"fieldName\": \"kibana.alert.group.value\",\r\n \"title\":
\"Group\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n },\r\n \"3\": {\r\n \"type\": \"optionsListControl\",\r\n
\"order\": 3,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n
\"explicitInput\": {\r\n \"id\": \"3\",\r\n \"dataViewId\":
\"unified-alerts-dv\",\r\n \"fieldName\": \"tags\",\r\n \"title\":
\"Tags\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n }\r\n },\r\n \"labelPosition\": \"oneLine\",\r\n
\"chainingSystem\": \"HIERARCHICAL\",\r\n \"autoApplySelections\":
true,\r\n \"ignoreParentSettings\": {\r\n \"ignoreValidations\":
true\r\n },\r\n \"editorConfig\": {\r\n \"hideWidthSettings\": true,\r\n
\"hideDataViewSelector\": true,\r\n \"hideAdditionalSettings\": true\r\n
}\r\n}\r\n```\r\n</details>\r\n\r\n## References\r\n\r\nFixes
#193565","sha":"ef3bc96e52f6c21bd1543d2cb48acef31f56022e"}},"sourceBranch":"main","suggestedTargetBranches":[],"targetPullRequestStates":[{"branch":"main","label":"v9.0.0","branchLabelMappingKey":"^v9.0.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/194785","number":194785,"mergeCommit":{"message":"[ResponseOps][Alerts]
Fix Stack Alerts page filter controls error (#194785)\n\n##
Summary\r\n\r\nhttps://github.com//pull/190561 introduced
a breaking\r\nchange in the format of the controls embeddable
configuration object\r\nthat caused usages in the Security and Stack
alerts pages to break if\r\nthere was an old value saved in
localStorage.\r\n\r\nThis PR makes the storage key for the alert filter
controls configurable\r\nand uses a new value for the usage in
`<UrlSyncedAlertsSearchBar>`,\r\nfixing the error in the Stack Alerts
page.\r\n\r\n## To verify\r\n\r\n1. Checkout a revision prior to this
PR\r\n2. Create Stack rules that fire alerts\r\n3. Visit the Stack
Alerts page (should show a full-page error message,\r\nif it doesn't see
[If the page works correctly](#how-to-break))\r\n4. Checkout this
PR\r\n5. Reload the Stack Alerts page\r\n6. Verify that the page loads
correctly\r\n\r\n<details id=\"how-to-break\">\r\n\r\n<summary>If the
page works correctly</summary>\r\n\r\nYou likely didn't have an old
saved configuration for the controls bar\r\nin the localStorage. In this
case, create a localStorage item
named\r\n`stackAlerts.default.pageFilters` with the following
content:\r\n\r\n```json\r\n{\r\n \"panels\": {\r\n \"0\": {\r\n
\"type\": \"optionsListControl\",\r\n \"order\": 0,\r\n \"grow\":
true,\r\n \"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\":
\"0\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.status\",\r\n \"title\": \"Status\",\r\n \"hideExclude\":
true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\": true,\r\n
\"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"selectedOptions\": [\r\n
\"active\"\r\n ],\r\n \"hideActionBar\": true,\r\n \"persist\":
true,\r\n \"hideExists\": true\r\n }\r\n },\r\n \"1\": {\r\n \"type\":
\"optionsListControl\",\r\n \"order\": 1,\r\n \"grow\": true,\r\n
\"width\": \"small\",\r\n \"explicitInput\": {\r\n \"id\": \"1\",\r\n
\"dataViewId\": \"unified-alerts-dv\",\r\n \"fieldName\":
\"kibana.alert.rule.name\",\r\n \"title\": \"Rule\",\r\n
\"hideExclude\": true,\r\n \"hideSort\": true,\r\n \"hidePanelTitles\":
true,\r\n \"placeholder\": \"\",\r\n \"ignoreParentSettings\": {\r\n
\"ignoreValidations\": true\r\n },\r\n \"hideExists\": true\r\n }\r\n
},\r\n \"2\": {\r\n \"type\": \"optionsListControl\",\r\n \"order\":
2,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n \"explicitInput\":
{\r\n \"id\": \"2\",\r\n \"dataViewId\": \"unified-alerts-dv\",\r\n
\"fieldName\": \"kibana.alert.group.value\",\r\n \"title\":
\"Group\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n },\r\n \"3\": {\r\n \"type\": \"optionsListControl\",\r\n
\"order\": 3,\r\n \"grow\": true,\r\n \"width\": \"small\",\r\n
\"explicitInput\": {\r\n \"id\": \"3\",\r\n \"dataViewId\":
\"unified-alerts-dv\",\r\n \"fieldName\": \"tags\",\r\n \"title\":
\"Tags\",\r\n \"hideExclude\": true,\r\n \"hideSort\": true,\r\n
\"hidePanelTitles\": true,\r\n \"placeholder\": \"\",\r\n
\"ignoreParentSettings\": {\r\n \"ignoreValidations\": true\r\n }\r\n
}\r\n }\r\n },\r\n \"labelPosition\": \"oneLine\",\r\n
\"chainingSystem\": \"HIERARCHICAL\",\r\n \"autoApplySelections\":
true,\r\n \"ignoreParentSettings\": {\r\n \"ignoreValidations\":
true\r\n },\r\n \"editorConfig\": {\r\n \"hideWidthSettings\": true,\r\n
\"hideDataViewSelector\": true,\r\n \"hideAdditionalSettings\": true\r\n
}\r\n}\r\n```\r\n</details>\r\n\r\n## References\r\n\r\nFixes
#193565","sha":"ef3bc96e52f6c21bd1543d2cb48acef31f56022e"}}]}]
BACKPORT-->

Co-authored-by: Umberto Pepato <[email protected]>
tiansivive pushed a commit to tiansivive/kibana that referenced this pull request Oct 7, 2024
…astic#194785)

## Summary

elastic#190561 introduced a breaking
change in the format of the controls embeddable configuration object
that caused usages in the Security and Stack alerts pages to break if
there was an old value saved in localStorage.

This PR makes the storage key for the alert filter controls configurable
and uses a new value for the usage in `<UrlSyncedAlertsSearchBar>`,
fixing the error in the Stack Alerts page.

## To verify

1. Checkout a revision prior to this PR
2. Create Stack rules that fire alerts
3. Visit the Stack Alerts page (should show a full-page error message,
if it doesn't see [If the page works correctly](#how-to-break))
4. Checkout this PR
5. Reload the Stack Alerts page
6. Verify that the page loads correctly

<details id="how-to-break">

<summary>If the page works correctly</summary>

You likely didn't have an old saved configuration for the controls bar
in the localStorage. In this case, create a localStorage item named
`stackAlerts.default.pageFilters` with the following content:

```json
{
  "panels": {
    "0": {
      "type": "optionsListControl",
      "order": 0,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "0",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.status",
        "title": "Status",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        },
        "selectedOptions": [
          "active"
        ],
        "hideActionBar": true,
        "persist": true,
        "hideExists": true
      }
    },
    "1": {
      "type": "optionsListControl",
      "order": 1,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "1",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.rule.name",
        "title": "Rule",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        },
        "hideExists": true
      }
    },
    "2": {
      "type": "optionsListControl",
      "order": 2,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "2",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "kibana.alert.group.value",
        "title": "Group",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        }
      }
    },
    "3": {
      "type": "optionsListControl",
      "order": 3,
      "grow": true,
      "width": "small",
      "explicitInput": {
        "id": "3",
        "dataViewId": "unified-alerts-dv",
        "fieldName": "tags",
        "title": "Tags",
        "hideExclude": true,
        "hideSort": true,
        "hidePanelTitles": true,
        "placeholder": "",
        "ignoreParentSettings": {
          "ignoreValidations": true
        }
      }
    }
  },
  "labelPosition": "oneLine",
  "chainingSystem": "HIERARCHICAL",
  "autoApplySelections": true,
  "ignoreParentSettings": {
    "ignoreValidations": true
  },
  "editorConfig": {
    "hideWidthSettings": true,
    "hideDataViewSelector": true,
    "hideAdditionalSettings": true
  }
}
```
</details>

## References

Fixes elastic#193565
@logeekal
Copy link
Contributor

logeekal commented Oct 8, 2024

Hey @Heenawter

if we want this to move in 8.16 do you think we should backport it to 8.x branch. This is because 8.16 will be cut from 8.x instead of main as mentioned in a recent email with Subject Upcoming 9.0.0 release schedule and branching strategy (8.18 release added) .

Let me know what you think.

@nreese
Copy link
Contributor

nreese commented Oct 8, 2024

@logeekal

if we want this to move in 8.16 do you think we should backport it to 8.x branch. This is because 8.16 will be cut from 8.x instead of main as mentioned in a recent email with Subject Upcoming 9.0.0 release schedule and branching strategy (8.18 release added) .

This PR is already in 8.x branch. See the screen shot below. The history for examples/controls_example/public/app/control_group_renderer_examples.tsx on 8.x branch includes this commit
image

@logeekal
Copy link
Contributor

logeekal commented Oct 8, 2024

Ohh okay.. Sorry I saw backport:skip and assumed that it is not there. Thanks for the confirmation @nreese

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
apm:review backport:skip This commit does not require backporting ci:project-deploy-observability Create an Observability project Feature:Embedding Embedding content via iFrame impact:critical This issue should be addressed immediately due to a critical level of impact on the product. project:embeddableRebuild release_note:skip Skip the PR/issue when compiling release notes Team:obs-ux-management Observability Management User Experience Team Team:Presentation Presentation Team for Dashboard, Input Controls, and Canvas v8.16.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Embeddable Rebuild] [Controls] Refactor ControlGroupRenderer