-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[Ingest Pipelines] Drop into an empty tree #76885
[Ingest Pipelines] Drop into an empty tree #76885
Conversation
Pinging @elastic/es-ui (Team:Elasticsearch UI) |
FWIW this seems release note worthy, using the content already provided in the PR description. Why not add the |
@cjcenizal I added a release note and updated the labels. Would you mind reviewing :D? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just reviewed the CSS that was added and LGTM!
Hey @jloleysens , just wanted to throw a suggestion to you, but doesn't need to be tackled in this PR. It looks like you've implemented a drag-and-drop interface with these panels. EUI has some components to help create this behavior and implements some consistent look to droppable areas (the green highlight). It also moves other items around nicely so that it is easy to see where the placement is happening as well as some keyboard commands for accessibility. It would be great if this page could use the DnD components provided by EUI mainly to help create a consistent behavior for DnD everywhere in Kibana so user's can maintain that knowledge of what parts can be dragged and to where. |
Hi @cchaos ! Thanks for commenting here :) When we originally implemented this piece of UI (74b69c7) we were using the DnD component provided by EUI. For the specific task of building ingest pipelines we hit a few snags:
For those reasons we pivoted to something better suited to the case of nested drop sites and really tall lists that need to be as performant as possible. Of the reasons I mentioned I'd say the first two are the most important. It would be cool to chat further about this specific problem and perhaps it is something EUI can come to solve? |
@elasticmachine merge upstream |
Thanks for the context @jloleysens ! This is definitely really great feedback to bring back to the @elastic/eui-design team. We don't tend to find opportunities to stress test our components so we don't catch instances like this. It would be great if we could find a resolution on the EUI side to help you out. My main concern here is using different visuals to represent drag and drop than the rest of Kibana. So if, in the end, EUI's DnD solution still doesn't quite work, lets figure out a way to align the visuals. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice GIF! Tested locally, code looks good. I think this is shippable, but it would be nice to fix the keyboard accessibility in a later PR.
It looks like the selected processor shifts out of position as soon as I tab forward, and the dropzone also doesn't highlight once I tab to it. I would also expect to be able to hit enter to drop it, but that doesn't work.
I didn't test this, but when the dropzone is highlighted I would also expect the screenreader to identify the action I can perform at the location I'm at, for example "Press enter to move the processor to the failure processors".
@elasticmachine merge upstream |
💚 Build SucceededBuild metricsasync chunks size
History
To update your PR or re-run it, just comment with: |
Thanks for the review @cjcenizal ! Ref #71666 |
* add ability to drop processor into empty tree * added a test Co-authored-by: Elastic Machine <[email protected]>
* add ability to drop processor into empty tree * added a test Co-authored-by: Elastic Machine <[email protected]> Co-authored-by: Elastic Machine <[email protected]>
* master: (26 commits) updating datatable type (elastic#77320) [ML] Fix custom URLs processing for security app (elastic#76957) [telemetry] add schema guideline + schema_check new check for --path config (elastic#75747) [ML] Transforms: API schemas and integration tests (elastic#75164) [Mappings editor] Add support for wildcard field type (elastic#76574) [Ingest Manager] Fix flyout instruction selection (elastic#77071) [Telemetry Tools] update lodash to 4.17 (elastic#77317) [APM] Service inventory redesign (elastic#76744) Hide management sections based on cluster/index privileges (elastic#67791) [Snapshot Restore] Disable steps when form is invalid (elastic#76540) [Mappings editor] Add support for positive_score_impact to rank_feature (elastic#76824) Update apm.ts (elastic#77310) [OBS] Remove beta badge, change news feed size and add external icon to news feed link (elastic#77164) [Discover] Convert legacy sort to be compatible with multi sort (elastic#76986) [APM] API Snapshot Testing (elastic#77229) [ML] Functional tests - increase wait time for DFA start (elastic#77307) [UiActions][Drilldowns] Fix actions sorting in context menu (elastic#77162) [Drilldowns] Wire up new links to new docs (elastic#77154) Fix APM issue template [Ingest Pipelines] Drop into an empty tree (elastic#76885) ...
Summary
Add the ability to drop a processor into an empty tree
Gif
Checklist
Delete any items that are not applicable to this PR.
Release note
The ingest node pipeline editor now has the ability to move processors into an empty tree.