Releases: elyra-ai/canvas
v13.20.0
Minor release
Common Canvas
#2390 [Feature Request] Draw decorations on top of nodes
A new canvas config property has been added in this release called enableRaiseLinksToTopOnHover
. By default, it is false but when set to true, when the mouse pointer is hovered over a link, the link and its decorations (if any) will be drawn on top of all other canvas objects.
#2392 Deselect All not displayed in canvas context menu/toolbar when a sub-set of canvas objects are selected
The Deselect All
option is now displayed in the context menu (or context toolbar) for the Canvas background when one or more objects on the canvas are selected. This aids the keyboard user in being able to rapidly deselect currently selected objects in teh same way as a mouse/trackpad user can click on the canvas background.
#2396 Double clicking to go back to previous pipeline can go too far back
When a sub-flow is being viewed, if the user clicks the Return to previous flow
button it is now immediately disabled. This prevents the user from accidentally clicking the button twice -- which can happen with some applications that manage supernodes and sub-flows themselves.
Common Properties
Bug fixes
Issues Resolved
- #2382 Bug: The beforeEditActionHandler, no longer correctly returns b… by @tomlyn in #2383
- #2384 Fix deleteLink in canvas-controller-api-test.js by @tomlyn in #2385
- #2386 SelectionChangedHandlerData: update addedNotes and selectedNode… by @tomlyn in #2387
- #2388 Expand and export InternalAction type by @tomlyn in #2389
- #2326 Accessibility Violations in Common Properties Controls without Label by @srikant-ch5 in #2327
- #2392 Deselect All not displayed in canvas context menu/toolbar when … by @tomlyn in #2393
- #2390 [Feature Request] Draw decorations on top of nodes by @tomlyn in #2391
- #2396 Double clicking to go back to previous pipeline can go too far back by @tomlyn in #2397
- #2398 TypeScript definitions do not work with isolatedModules by @samueldmeyer in #2399
- #2394 Pressing escape after entering multiline comment doesn't return…by @Jerinjk14 in #2395
Full Changelog: v13.19.2...v13.20.0
v13.19.2
Patch release
Common Canvas
8 fixed
Common Properties
1 accessibility fix
Issues Resolved
- #2364 Correct documentation for additionalInfo.messages returned by t… by @tomlyn in #2365
- #2366 updateComment time logger message does not have an end by @tomlyn in #2368
- #2371 Update zoom extension to be in-sync with D3 zoom code by @tomlyn in #2372
- #2343 Accessibility Violations in Codemirror Component by @srikant-ch5 in #2344
- #2373 Hovering mouse pointer over node causes focus to be lost by @tomlyn in #2374
- #2375 Do not rerender the canvas everytime the config option enableRi… by @tomlyn in #2376
- #2377 Typescript definition missing palette properties by @tomlyn in #2378
- #2379 Incorrect id property in Typescript test by @tomlyn in #2380
- #2360 MoveFocusTo can sometimes have an error in complex refresh scenarios by @caritaou in #2381
Full Changelog: v13.19.1...v13.19.2
v13.19.1
v13.19.0
Feature Enhancements
App Development
#1320 Add module TypeScript definitions and compatibility
Elyra Canvas now includes Typescript
declarations for its API, including:
- The Common Canvas React object
- The canvas controller
- The Common Properties React object
- The properties controller
The declarations are exported from Elyra Canvas for use in your Typescript code. The files can be found in the canvas-modules/common-canvas/types directory in the Elyra Canvas repo.
These declaration leverage Typescript declarations exported from the elyra/pipeline-schemas
package that are automatically generated from the JSON schema files contained in that repo. The declarations are for:
- Pipeline flow objects
- Canvas info objects (which are the internal format used by the canvas controller API methods)
Many thanks to David Pham and Sam Mayer for their contributions to this significant new feature.
Common Canvas
#2354 Update Mapping sample app to have editable column names
The Mapping sample app has been updated to have editable column names. The user can click on a column name to make it editable.
#2356 Keyboard equivalents needed for different types of mouse' click'
Currently, when the configuration property enableKeyboardNavigation
is set to true, various keyboard interactions are enabled that simulate gestures that can be performed with the mouse or trackpad. In this release, Common Canvas will emit a call to clickActionHandler
with an appropriate parameter value to indicate the type of mouse/trackpad gesture being simulated.
For example, with focus on a node:
- Pressing
Command + /
simulates a right-click on the node- Common Canvas will make a call to the
clickActionHandler
with theclickType
property of thesource
parameter set to"SINGLE_CLICK_CONTEXTMENU"
- Common Canvas will make a call to the
- Pressing
return
simulates a click on the node- Common Canvas will make a call to the
clickActionHandler
with theclickType
property of thesource
parameter set to"SINGLE_CLICK"
- Common Canvas will make a call to the
- When the node is currently selected, pressing enter simulates a double-click on the node
- Common Canvas will make a call to the
clickActionHandler
with theclickType
property of thesource
parameter set to"DOUBLE_CLICK"
- Common Canvas will make a call to the
Common Properties
No new features
Issues Resolved
- #1320 Add module TypeScript definitions by @samueldmeyer in #2282
- #2352 Node context toolbar with an overflow menu and toolbar items behave oddly on Safari-fix by @Jerinjk14 in #2353
- #2354 Update Mapping sample app to have editable column names by @tomlyn in #2355
- #2356 Keyboard equivalents needed for different types of mouse' click' by @tomlyn in #2357
- #2360 MoveFocusTo can sometimes have an error in complex refresh scen… by @tomlyn in #2361
New Contributors
- @samueldmeyer made their first contribution in #2282
Full Changelog: v13.18.0...v13.19.0
v13.18.0
Feature Enhancements
Common Canvas
No new features
Common Properties
#2346 New config option should_filter_item
for filtering oneofselect dropdown items. This defaults to false
and will need to be set to true
to enable filtering. This only applies to oneofselect controls that also have custom_value_allowed
set to true
Issues Resolved
- #2332 Include Codemirror aria-label by @srikant-ch5 in #2333
- #2336 Accessibility Violation in Disabled Control Label by @srikant-ch5 in #2337
- #2338 Canvas Contoller createNodeLink method should not accept link t… by @tomlyn in #2339
- #2342 Accessibility violation in the empty canvas page by @srikant-ch5 in #2345
- #2340 Miscellaneous function signature improvements in Canvas Controller by @tomlyn in #2341
- #2348 Specify node type in Prompt sample app by @tomlyn in #2349
- #2350 Support content_type instead of contentType in pipeline flow sc… by @tomlyn in #2351
- #2346 New config option to disable filtering in oneofselect controls by @caritaou in #2347
Full Changelog: v13.17.0...v13.18.0
v13.17.0
Feature Enhancements
Common Canvas
No changes
Common Properties
#2256 Add ability to display text description next to Common Properties heading label.
A new Common Properties config showHeadingDesc
is added that allows headings to have descriptions displayed as tooltips, which include clickable links. When a link is clicked user will be redirected to the URL specified in the help
property.
Description can be included in parmaDef
like below.

The Description tooltip/Help button will behave in following manner.
-
If only
description
is provided withouthelp
, a tooltip is displayed like below. -
If there is only
help
then a help button is displayed and the icon opens the help page. -
If there are both description and help then the
description
text with the link from thehelp
section is displayed in a Tooltip like below.
Issues Resolved
- #2294 Accessibility violations fix - RadioButtons, Table Custom Buttons by @srikant-ch5 in #2306
- #2323 Tearsheet- Flow Properties- Should be able to disable Save for invalid job parameters by @veenas1 in #2324
- #2256 Add ability to display text description next to heading label by @srikant-ch5 in #2263
- #2328 SVG Elements Lack Accessible Names in Common Canvas Nodes by @srikant-ch5 in #2330
- #2296 Use React Testing Library for common-properties tests - Part 2-… by @Jerinjk14 in #2331
Full Changelog: v13.16.0...v13.17.0
v13.16.0
Feature Enhancements
Common Canvas
#2316 Single click to add item from palette
A new canvas configuration field called enableSingleClickAddFromPalette
has been added in this release. If set to true, it will allow the user to single click on a node in the palette to automatically add the node to the canvas and link it up to one of the existing nodes on the canvas. This is the same as the currently supported behavior where the user can double click on a node in the palette to add and link it to the current flow.
Common Properties
Just on bug fix
Issues Resolved
- #2309 Click with shift doesn't remove selections by @tomlyn in #2310
- #2311 Top panel re-renders unnecessarily by @tomlyn in #2312
- #2314 Disabled palette items need aria-disabled by @tomlyn in #2315
- #2302 Nodes with looped links crash the UI by @tomlyn in #2303
- #2316 Single click to add item from palette by @tomlyn in #2317
- #2319 Keyboard accessibility of palette tooltip by @tomlyn in #2320
- #2321 Single select table with moveable rows and no Delete icons by @srikant-ch5 in #2322
Full Changelog: v13.15.0...v13.16.0
v13.15.0
Feature Enhancements
Common Canvas
#2298 Drag interactions are too sensitive
When the config field enableDragWithoutSelect
is set to true, the dragging of nodes is now a little less sensitive to slight movements of the mouse during a click to select a node. The mouse is allowed to move 3px between the mousedown
and mouseup
and the gesture will still be interpreted as a select gesture rather than a drag gesture.
Common Properties
Just bug fixes
Issues Resolved
- #2298 Drag interactions are too sensitive by @tomlyn in #2299
- #2300 Readonly table row should not have delete icon by @nmgokhale in #2301
- #2294 Fix Accessibility Violations - 2 by @srikant-ch5 in #2295
- #2307 Clicking edit icon for node label causes node selection instead … by @tomlyn in #2308
- #2304 Action Overflow Issue in Common Properties by @srikant-ch5 in #2305
Full Changelog: v13.14.0...v13.15.0
v13.14.0
Feature Enhancements
Common Properties
#2292 For single select tables, show table toolbar when moveable_rows is set
When single select table has moveable_rows: true
, table toolbar should have row move buttons -
When moveable_rows: false
or moveable_rows
is not set, don't show table toolbar for single select tables -
Issues Resolved
- #2283 Custom Controls do not take up full width when there is an action button on right by @srikant-ch5 in #2284
- #2264 Common Properties Button is hidden on height change by @srikant-ch5 in #2265
- #2287 Fixed Common properties callbacks don't update on re-render by @nmgokhale in #2288
- #2285 Common Properties Code control pushes action button out of panel by @srikant-ch5 in #2286
- #2289 Common Properties Right Flyout Styling Documentation by @srikant-ch5 in #2290
- #2289 Common Properties Right Flyout Styling Documentation (minor changes) by @srikant-ch5 in #2291
- #2292 For single select tables, show table toolbar when moveable_rows is set by @nmgokhale in #2293
Full Changelog: v13.13.0...v13.14.0
v13.13.0
Feature Enhancements
Common Canvas
#2266 Custom port images
The specification for the way ports are displayed has been changed in this release. The following fields in the node layout object (enableNodeLayout
in the canvas config object) have been removed:
- outputPortObject
- outputPortImage
- outputPortWidth
- outputPortHeight
They have been replaced with a field called outputPortDisplayObjects
. This contains an array with an element that corresponds to each output port specified for the nodes. The elements of the array can have different structures as follows:
Either:
{ type: “circle” } // Draws a circle to represent the port
Or:
{ type: “circleWithArrow” } // Draws a circle with an arrow head (shown when port is connected) to represent the port.
Or:
{ type: “image”, src: “path/picture.svg”, width: 10, height: 10 } // Displays an image for the port
Or:
{ type: “jsx”, src: (<FaceCool />), width: 10, height: 10 } // Displays a JSX object for the port
If the node has more output ports (outputs) than elements in the array the last element from the array will be used for the remaining ports. So if you want all ports to be displayed the same, just specify one element in the array.
The same change has been made for output ‘guide objects’. A Guide object is the image displayed at the end of the new link line as it is dragged away from the node. These fields have been removed:
- outputPortGuideObject
- outputPortGuideImage
They have been replaced with the field outputPortGuideObjects
which is an array with the same structure as for outputPortDisplayObjects
.
The same change has been made for input ports. These fields have been removed:
- inputPortObject
- inputPortImage
- inputPortWidth
- inputPortHeight
and have been replaced by inputPortDisplayObjects
.
And also these fields have been removed:
- inputPortGuideObject
- inputPortGuideImage
and have been replaced by the field inputPortGuideObjects
These changes allow something like this where each output port can have a different image:

Notes:
- The
Prompt
sample application has been altered to use this new approach. - The old fields will continue to work in the current release but will be removed in the next major release (which is not that far in the future). It is therefore strongly recommended, if your code is overriding any of the defaults for these fields, that you convert your code to use the new arrays. This will save having migration work in the future.
#2276 Allow click on a port to cause an action
The user can now click on a port which will cause the clickActionHandler
callback to be called with a source
parameter object that contains information about the node and port that was clicked.
The Prompt
sample application in the test harness has been updated to enable this, so the user can click a port to display a link and prompt for that port.
Common Properties
- Just bug fixes
Issues Resolved
- #2261 Properties sizing button hidden by bottom panel by @srikant-ch5 in #2262
- #2268 Jest tests broken in Elyra Canvas build by @tomlyn in #2269
- #2266 Custom port images by @tomlyn in #2267
- #2271 Use React Testing Library for common-properties tests - Part 2-… by @Jerinjk14 in #2272
- #2274 Document enableFocusOnMount config field by @tomlyn in #2275
- #2276 Allow click on a port to cause an action by @tomlyn in #2277
- #2279 Have a property not to display the context toolbar when the use… by @tomlyn in #2280
- #2270 Canvas palette not loading/displayed in Safari browser by @tomlyn in #2278
Full Changelog: v13.12.0...v13.13.0