kibana/examples
Hannah Mudge 200922a512
[kbn-grid-layout] Add useCustomDragHandle prop (#210463)
This PR **might** resolve
https://github.com/elastic/kibana/issues/207011 but we will need time
for the telemetry metrics to settle before we know for sure.

## Summary

This PR removes the conditional rendering of the default drag handle in
`kbn-grid-layout`, which has two benefits:

1. It removes the double render of `GridPanel` that was caused by
relying on the `dragHandleCount` to be updated in order to determine
whether the default drag handle should be rendered
2. The default drag handle no longer "flashes" when Dashboards are
loading and waiting for `dragHandleCount` to update
  
   - **Before:**
   

https://github.com/user-attachments/assets/30a032fc-4df3-42ce-9494-dd7f69637c03
      
   - **After:**
   

https://github.com/user-attachments/assets/db447911-cbe2-40dd-9a07-405d1e35a75d


Instead, the consumer of `kbn-grid-layout` is responsible for setting
the `useCustomDragHandle` prop to `true` when they want to use a drag
handle other than the default one.


When adding the `useCustomDragHandle` prop, I got annoyed that I had to
pass this prop all the way down to `grid_panel` - so I decided to swap
to using React context in this PR, as well. The API for the grid layout
component will most likely continue to grow, so this should make it
easier to manage the props.

### 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)
2025-02-13 15:18:00 -07:00
..
content_management_examples [Discover] Rename Saved Search to Discover Session (#202217) 2024-12-18 13:45:32 +01:00
controls_example [embeddable] make presentation interface names consistent (#205279) 2025-01-22 10:46:01 -06:00
data_view_field_editor_example SKA: Update broken references and URLs (#206836) 2025-01-28 03:32:48 +00:00
developer_examples Preparation for High Contrast Mode, Core/SharedUX domains (#202606) 2024-12-05 08:26:41 -07:00
discover_customization_examples Preparation for High Contrast Mode, Analytics Experience domains (#202608) 2024-12-12 13:16:07 -06:00
embeddable_examples [dashboard][canvas] Replace VisTypes and VisTypeAliases in Add Panel Menu (#209022) 2025-02-10 15:33:24 -07:00
error_boundary Adds AGPL 3.0 license (#192025) 2024-09-06 19:02:41 -06:00
eso_model_version_example More strict plugin type definitions (#205232) 2025-01-07 16:41:15 +01:00
esql_ast_inspector [ES|QL] Improve the Builder class (#203558) 2024-12-13 16:19:10 +01:00
esql_validation_example Sustainable Kibana Architecture: Move modules owned by @elastic/kibana-esql (#202722) 2024-12-09 11:33:55 +01:00
expressions_explorer SKA: Update broken references and URLs (#206836) 2025-01-28 03:32:48 +00:00
feature_control_examples [Authz] Migrated routes with access tags to security config (#209756) 2025-02-11 21:36:38 +07:00
feature_flags_example SKA: Relocate core mock and test-helper modules (#208538) 2025-01-29 12:14:44 +01:00
field_formats_example Adds AGPL 3.0 license (#192025) 2024-09-06 19:02:41 -06:00
files_example [Authz] Migrate outstanding SharedUX routes with access tags (#206260) 2025-01-13 14:52:06 +01:00
grid_example [kbn-grid-layout] Add useCustomDragHandle prop (#210463) 2025-02-13 15:18:00 -07: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 Adds AGPL 3.0 license (#192025) 2024-09-06 19:02:41 -06:00
portable_dashboards_example [embeddable] make presentation interface names consistent (#205279) 2025-01-22 10:46:01 -06:00
preboot_example Adds AGPL 3.0 license (#192025) 2024-09-06 19:02:41 -06:00
resizable_layout_examples Preparation for High Contrast Mode, Analytics Experience domains (#202608) 2024-12-12 13:16:07 -06:00
response_stream [ML] AIOps: Log Rate Analysis embeddable (#197943) 2024-11-05 15:48:45 +01:00
routing_example SKA: Update broken references and URLs (#206836) 2025-01-28 03:32:48 +00:00
screenshot_mode_example [SharedUX/SCSS] remove scss from selected components (#207008) 2025-01-24 19:42:02 +00:00
search_examples SKA: Update broken references and URLs (#206836) 2025-01-28 03:32:48 +00:00
share_examples [Reporting] fix dashboard "Copy Post URL" action (#192530) 2024-10-08 01:54:21 +02: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 Sustainable Kibana Architecture: Move modules owned by @elastic/kibana-data-discovery (#203152) 2024-12-30 13:23:47 +01: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
user_profile_examples [Authz] Migrated routes with access tags to security config (#209756) 2025-02-11 21:36:38 +07:00
v8_profiler_examples Adds AGPL 3.0 license (#192025) 2024-09-06 19:02:41 -06: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
----