mcgilman opened a new pull request, #11773: URL: https://github.com/apache/nifi/pull/11773
Add typed component dragging, connection creation, endpoint reconnection, selection, and optimistic UI state handling. Integrate the reusable canvas with connector flows and add regression coverage for gesture lifecycles. # Summary [NIFI-16397](https://issues.apache.org/jira/browse/NIFI-16397) Adds reusable canvas interaction support for connector flows. - Adds typed component selection and multi-component dragging. - Adds connection creation and destination endpoint reconnection. - Centralizes drag behavior and preserves server-authoritative entities during optimistic updates. - Handles polling, gesture teardown, save confirmation, and failure reversion safely. - Scopes canvas operations to prevent interaction between multiple canvas instances. - Adds regression coverage for drag, selection, connection, and lifecycle behavior. # Tracking Please complete the following tracking steps prior to pull request creation. ### Issue Tracking - [Apache NiFi Jira](https://issues.apache.org/jira/browse/NIFI) issue created ### Pull Request Tracking - Pull Request title starts with Apache NiFi Jira issue number, such as `NIFI-00000` - Pull Request commit message starts with Apache NiFi Jira issue number, as such `NIFI-00000` - Pull request contains [commits signed](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits) with a registered key indicating `Verified` status ### Pull Request Formatting - Pull Request based on current revision of the `main` branch - Pull Request refers to a feature branch with one commit containing changes # Verification Frontend verification completed: - `npx nx test nifi --run --reporter=dot` — 3,057 tests passed - `npx nx run nifi:lint` - `npx nx run nifi:build:production` - Prettier formatting - `git diff --check` ### Build - [ ] Build completed using `./mvnw clean install -P contrib-check` - [ ] JDK 21 - [ ] JDK 25 ### Licensing - [ ] New dependencies are compatible with the [Apache License 2.0](https://apache.org/licenses/LICENSE-2.0) according to the [License Policy](https://apache.org/legal/resolved.html) - [ ] New dependencies are documented in applicable `LICENSE` and `NOTICE` files ### Documentation - [ ] Documentation formatting appears as expected in rendered files -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
