kibana/examples
Hannah Mudge 1b25685667
[kbn-grid-layout] Flatten grid layout (#218900)
Closes https://github.com/elastic/kibana/issues/216096

## Summary

This PR accomplishes two main things:
1. It flattens out how grid elements are rendered, which means that
embeddables no longer re-mount when dragged between sections and
2. It allows panels and sections to be "intermixed" on a **single**
level (i.e. you can only drop a section header between panels if they
are **not** in a section)

Since this was a **major** rewrite of the grid layout logic, I also took
some time to clean up the code - this includes removing
`proposedGridLayout$` (since this added two sources of truth, which was
causing issues with the DOM becoming out-of-sync with the layout object;
however, this also caused
https://github.com/elastic/kibana/issues/220309) and unifying on the use
of "section" rather than "row" (since it was confusing that we were
using "row" for both the grid row number and the section ID).


https://github.com/user-attachments/assets/c5d9aa97-5b14-4f4c-aacf-74055c7d9c33

> [!NOTE]
> Reminder that, since collapsible sections aren't available in
Dashboard yet, you must test this PR in the `grid` example app (by
running Kibana with `yarn start --run-examples`).


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

---------

Co-authored-by: mbondyra <marta.bondyra@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Marta Bondyra <4283304+mbondyra@users.noreply.github.com>
2025-05-21 08:01:13 -06:00
..
content_management_examples [TableListView] Remove listing limit warning (#217945) 2025-04-15 13:42:23 +02:00
controls_example [Embeddables] Serialized State Only (#215947) 2025-05-06 15:08:34 -06:00
data_view_field_editor_example Upgrade EUI to v101.0.1 (#215698) 2025-03-28 19:29:23 +01:00
developer_examples [Discover][Tabs] New tabs package and initial implementation of components (#210674) 2025-02-21 14:00:40 +01:00
discover_customization_examples [Discover] Support state updates across tabs (#215620) 2025-03-31 15:41:59 -03:00
embeddable_examples Fix: success message and scroll after adding panel from library (#220122) 2025-05-09 13:24:49 -04:00
error_boundary Upgrade EUI to v101.0.1 (#215698) 2025-03-28 19:29:23 +01:00
eso_model_version_example [Authz] Mandatory Security Config (#215180) 2025-03-27 12:04:53 -07:00
esql_ast_inspector [ES|QL] Source AST node parsing improvements and source selector parsing (#217299) 2025-04-07 16:11:10 +02:00
esql_validation_example [ES|QL] Renames the ESQLRealField type to ESQLFieldWithMetadata (#219894) 2025-05-02 16:32:45 +02:00
expressions_explorer SKA: Update broken references and URLs (#206836) 2025-01-28 03:32:48 +00:00
feature_control_examples [Authz] Mandatory Security Config (#215180) 2025-03-27 12:04:53 -07:00
feature_flags_example [Authz] Mandatory Security Config (#215180) 2025-03-27 12:04:53 -07:00
field_formats_example Upgrade EUI to v101.0.1 (#215698) 2025-03-28 19:29:23 +01:00
files_example Upgrade EUI to v101.0.1 (#215698) 2025-03-28 19:29:23 +01:00
grid_example [kbn-grid-layout] Flatten grid layout (#218900) 2025-05-21 08:01:13 -06:00
guided_onboarding_example [Search] remove app search guided onboarding (#206670) 2025-01-24 09:46:05 -06:00
hello_world Adds AGPL 3.0 license (#192025) 2024-09-06 19:02:41 -06:00
locator_examples Adds AGPL 3.0 license (#192025) 2024-09-06 19:02:41 -06:00
locator_explorer SKA: Update broken references and URLs (#206836) 2025-01-28 03:32:48 +00:00
partial_results_example Upgrade EUI to v101.0.1 (#215698) 2025-03-28 19:29:23 +01:00
portable_dashboards_example [Embeddables] Serialized State Only (#215947) 2025-05-06 15:08:34 -06:00
preboot_example [Authz] Mandatory Security Config (#215180) 2025-03-27 12:04:53 -07:00
resizable_layout_examples Preparation for High Contrast Mode, Analytics Experience domains (#202608) 2024-12-12 13:16:07 -06:00
response_stream [Charts] Use chartTheme hook everywhere (#217370) 2025-04-14 18:09:15 +02:00
routing_example [Authz] Mandatory Security Config (#215180) 2025-03-27 12:04:53 -07:00
screenshot_mode_example Change reporting CODEOWNERS to response ops (#213560) 2025-04-04 23:27:42 +02:00
search_examples [Authz] Mandatory Security Config (#215180) 2025-03-27 12:04:53 -07:00
share_examples [Reporting] fix dashboard "Copy Post URL" action (#192530) 2024-10-08 01:54:21 +02:00
sse_example [Authz] Mandatory Security Config (#215180) 2025-03-27 12:04:53 -07:00
state_containers_examples [Saved Queries] Rework saved query privileges (#202863) 2025-01-29 17:34:58 -04:00
ui_action_examples Preparation for High Contrast Mode, Core/SharedUX domains (#202606) 2024-12-05 08:26:41 -07:00
ui_actions_explorer SKA: Update broken references and URLs (#206836) 2025-01-28 03:32:48 +00:00
unified_doc_viewer Upgrade ES client to 9.0.0-alpha.3 (#208776) 2025-02-25 14:37:23 +00:00
unified_field_list_examples Sustainable Kibana Architecture: Move modules owned by @elastic/kibana-data-discovery (#203152) 2024-12-30 13:23:47 +01:00
unified_tabs_examples [Discover Session][Tabs] Tab preview (#214090) 2025-03-20 14:10:56 +02:00
user_profile_examples [Authz] Migrated routes with access tags to security config (#209756) 2025-02-11 21:36:38 +07:00
v8_profiler_examples [Authz] Mandatory Security Config (#215180) 2025-03-27 12:04:53 -07:00
README.asciidoc Adds run without basepath configured to examples readme (#173086) 2023-12-12 11:22:02 -07:00

[[example-plugins]]
== Example plugins

This folder contains example plugins.  To run the plugins in this folder, use the `--run-examples` flag (without a basepath), via

[source,bash]
----
yarn start --run-examples
----