@elyra/canvas 12.41.0 → 12.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/dist/{_baseIteratee-05ccf6a8.js → _baseIteratee-148093b7.js} +3 -3
  2. package/dist/{_baseIteratee-05ccf6a8.js.map → _baseIteratee-148093b7.js.map} +1 -1
  3. package/dist/{canvas-constants-079172c0.js → canvas-constants-acb99f64.js} +2 -2
  4. package/dist/{canvas-constants-079172c0.js.map → canvas-constants-acb99f64.js.map} +1 -1
  5. package/dist/canvas-controller-6726b9ac.js +2 -0
  6. package/dist/canvas-controller-6726b9ac.js.map +1 -0
  7. package/dist/canvas-controller-6c6bc68f.js +2 -0
  8. package/dist/canvas-controller-6c6bc68f.js.map +1 -0
  9. package/dist/common-canvas-9374ef35.js +2 -0
  10. package/dist/common-canvas-9374ef35.js.map +1 -0
  11. package/dist/common-canvas-a6435bdb.js +2 -0
  12. package/dist/common-canvas-a6435bdb.js.map +1 -0
  13. package/dist/common-canvas.es.js +1 -1
  14. package/dist/common-canvas.es.js.map +1 -1
  15. package/dist/common-canvas.js +1 -1
  16. package/dist/common-canvas.js.map +1 -1
  17. package/dist/common-properties-08707efe.js +2 -0
  18. package/dist/common-properties-08707efe.js.map +1 -0
  19. package/dist/common-properties-acd55e94.js +2 -0
  20. package/dist/common-properties-acd55e94.js.map +1 -0
  21. package/dist/context-menu-wrapper-271eb2df.js +2 -0
  22. package/dist/context-menu-wrapper-271eb2df.js.map +1 -0
  23. package/dist/context-menu-wrapper-e4a7ab4d.js +2 -0
  24. package/dist/context-menu-wrapper-e4a7ab4d.js.map +1 -0
  25. package/dist/{datarecord-metadata-v3-schema-59505bc5.js → datarecord-metadata-v3-schema-03427296.js} +2 -2
  26. package/dist/{datarecord-metadata-v3-schema-59505bc5.js.map → datarecord-metadata-v3-schema-03427296.js.map} +1 -1
  27. package/dist/{flexible-table-63ffd573.js → flexible-table-107ca2fd.js} +1 -1
  28. package/dist/{flexible-table-63ffd573.js.map → flexible-table-107ca2fd.js.map} +1 -1
  29. package/dist/{flexible-table-43e2d052.js → flexible-table-5cc1ad6b.js} +2 -2
  30. package/dist/{flexible-table-43e2d052.js.map → flexible-table-5cc1ad6b.js.map} +1 -1
  31. package/dist/{icon-0390f1fe.js → icon-2caf035c.js} +2 -2
  32. package/dist/{icon-0390f1fe.js.map → icon-2caf035c.js.map} +1 -1
  33. package/dist/{index-57503b50.js → index-5dac3da8.js} +2 -2
  34. package/dist/{index-57503b50.js.map → index-5dac3da8.js.map} +1 -1
  35. package/dist/{index-1cd54914.js → index-fee06179.js} +2 -2
  36. package/dist/{index-1cd54914.js.map → index-fee06179.js.map} +1 -1
  37. package/dist/{isArrayLikeObject-36898fcb.js → isArrayLikeObject-7a30aa4b.js} +2 -2
  38. package/dist/{isArrayLikeObject-36898fcb.js.map → isArrayLikeObject-7a30aa4b.js.map} +1 -1
  39. package/dist/lib/canvas-controller.es.js +1 -1
  40. package/dist/lib/canvas-controller.js +1 -1
  41. package/dist/lib/canvas.es.js +1 -1
  42. package/dist/lib/canvas.js +1 -1
  43. package/dist/lib/context-menu.es.js +1 -1
  44. package/dist/lib/context-menu.js +1 -1
  45. package/dist/lib/properties/clem.es.js +2 -0
  46. package/dist/lib/properties/clem.es.js.map +1 -0
  47. package/dist/lib/properties/clem.js +2 -0
  48. package/dist/lib/properties/clem.js.map +1 -0
  49. package/dist/lib/properties/field-picker.es.js +1 -1
  50. package/dist/lib/properties/field-picker.js +1 -1
  51. package/dist/lib/properties/flexible-table.es.js +1 -1
  52. package/dist/lib/properties/flexible-table.js +1 -1
  53. package/dist/lib/properties/getPythonHints.es.js +2 -0
  54. package/dist/lib/properties/getPythonHints.es.js.map +1 -0
  55. package/dist/lib/properties/getPythonHints.js +2 -0
  56. package/dist/lib/properties/getPythonHints.js.map +1 -0
  57. package/dist/lib/properties.es.js +1 -1
  58. package/dist/lib/properties.js +1 -1
  59. package/dist/lib/tooltip.es.js +1 -1
  60. package/dist/lib/tooltip.es.js.map +1 -1
  61. package/dist/lib/tooltip.js +1 -1
  62. package/dist/lib/tooltip.js.map +1 -1
  63. package/dist/styles/common-canvas.min.css +1 -1
  64. package/dist/styles/common-canvas.min.css.map +1 -1
  65. package/dist/toolbar-ccc1d600.js +2 -0
  66. package/dist/toolbar-ccc1d600.js.map +1 -0
  67. package/dist/toolbar-e4445bf8.js +2 -0
  68. package/dist/toolbar-e4445bf8.js.map +1 -0
  69. package/package.json +12 -4
  70. package/rollup.config.js +2 -0
  71. package/src/color-picker/color-picker.jsx +96 -17
  72. package/src/command-actions/arrangeLayoutAction.js +7 -6
  73. package/src/command-actions/attachNodeToLinksAction.js +4 -4
  74. package/src/command-actions/collapseSuperNodeInPlaceAction.js +5 -5
  75. package/src/command-actions/colorSelectedObjectsAction.js +4 -4
  76. package/src/command-actions/commonPropertiesAction.js +1 -1
  77. package/src/command-actions/convertSuperNodeExternalToLocalAction.js +4 -4
  78. package/src/command-actions/convertSuperNodeLocalToExternalAction.js +4 -4
  79. package/src/command-actions/createAutoNodeAction.js +14 -5
  80. package/src/command-actions/createCommentAction.js +4 -10
  81. package/src/command-actions/createCommentLinkAction.js +4 -4
  82. package/src/command-actions/createNodeAction.js +13 -4
  83. package/src/command-actions/createNodeAttachLinksAction.js +4 -4
  84. package/src/command-actions/createNodeLinkAction.js +13 -4
  85. package/src/command-actions/createNodeLinkDetachedAction.js +4 -4
  86. package/src/command-actions/createNodeOnLinkAction.js +4 -4
  87. package/src/command-actions/createSuperNodeAction.js +7 -7
  88. package/src/command-actions/deconstructSuperNodeAction.js +5 -5
  89. package/src/command-actions/deleteLinkAction.js +4 -4
  90. package/src/command-actions/deleteObjectsAction.js +15 -6
  91. package/src/command-actions/disconnectObjectsAction.js +13 -4
  92. package/src/command-actions/displayPreviousPipelineAction.js +4 -4
  93. package/src/command-actions/displaySubPipelineAction.js +4 -4
  94. package/src/command-actions/editCommentAction.js +4 -4
  95. package/src/command-actions/editDecorationLabelAction.js +4 -4
  96. package/src/command-actions/expandSuperNodeInPlaceAction.js +5 -5
  97. package/src/command-actions/insertNodeIntoLinkAction.js +4 -4
  98. package/src/command-actions/moveObjectsAction.js +4 -4
  99. package/src/command-actions/pasteAction.js +16 -7
  100. package/src/command-actions/saveToPaletteAction.js +4 -4
  101. package/src/command-actions/setLinksStyleAction.js +4 -4
  102. package/src/command-actions/setNodeLabelAction.js +4 -4
  103. package/src/command-actions/setObjectsStyleAction.js +4 -4
  104. package/src/command-actions/sizeAndPositionObjectsAction.js +4 -4
  105. package/src/command-actions/updateLinkAction.js +4 -4
  106. package/src/common-canvas/canvas-controller-menu-utils.js +1 -1
  107. package/src/common-canvas/canvas-controller.js +116 -62
  108. package/src/common-canvas/cc-central-items.jsx +1 -5
  109. package/src/common-canvas/cc-context-toolbar.jsx +9 -13
  110. package/src/common-canvas/cc-toolbar.jsx +28 -9
  111. package/src/common-canvas/common-canvas.scss +3 -3
  112. package/src/common-canvas/svg-canvas-d3.scss +3 -2
  113. package/src/common-canvas/svg-canvas-renderer.js +50 -23
  114. package/src/common-canvas/svg-canvas-utils-drag-det-link.js +8 -1
  115. package/src/common-canvas/svg-canvas-utils-drag-new-link.js +1 -1
  116. package/src/common-properties/components/field-picker/field-picker.jsx +4 -0
  117. package/src/common-properties/components/table-buttons/table-buttons.scss +0 -1
  118. package/src/common-properties/controls/checkbox/checkbox.scss +0 -1
  119. package/src/common-properties/controls/expression/expression-builder/expression-builder.jsx +32 -26
  120. package/src/common-properties/controls/expression/expression.jsx +143 -116
  121. package/src/common-properties/controls/expression/expression.scss +43 -45
  122. package/src/common-properties/controls/expression/languages/CLEM-hint.js +86 -159
  123. package/src/common-properties/controls/expression/languages/python-hint.js +41 -104
  124. package/src/common-properties/controls/expression/languages/r-hint.js +61 -128
  125. package/src/common-properties/index.js +4 -2
  126. package/src/common-properties/properties-controller.js +5 -0
  127. package/src/context-menu/common-context-menu.jsx +4 -1
  128. package/src/index.js +14 -4
  129. package/src/notification-panel/notification-panel.jsx +82 -56
  130. package/src/notification-panel/notification-panel.scss +42 -40
  131. package/src/object-model/object-model.js +19 -5
  132. package/src/object-model/redux/canvas-store.js +4 -3
  133. package/src/object-model/redux/reducers/canvasinfo.js +7 -11
  134. package/src/object-model/redux/reducers/canvastoolbar.js +5 -6
  135. package/src/palette/palette-dialog-topbar.jsx +27 -38
  136. package/src/palette/palette-flyout-content-category.jsx +25 -6
  137. package/src/palette/palette.scss +8 -40
  138. package/src/toolbar/{toolbar-utils.js → index.js} +3 -18
  139. package/src/toolbar/toolbar-action-item.jsx +122 -316
  140. package/src/toolbar/toolbar-button-item.jsx +381 -0
  141. package/src/toolbar/toolbar-divider-item.jsx +4 -5
  142. package/src/toolbar/toolbar-overflow-item.jsx +85 -37
  143. package/src/toolbar/toolbar-sub-menu-item.jsx +236 -0
  144. package/src/toolbar/toolbar-sub-menu.jsx +252 -0
  145. package/src/toolbar/toolbar-sub-panel.jsx +94 -0
  146. package/src/toolbar/toolbar-sub-utils.js +86 -0
  147. package/src/toolbar/toolbar.jsx +386 -148
  148. package/src/toolbar/toolbar.scss +63 -56
  149. package/src/tooltip/tooltip.jsx +65 -12
  150. package/stats.html +1 -1
  151. package/assets/images/palette/close_32.svg +0 -1
  152. package/assets/images/palette/palette_close.svg +0 -4
  153. package/assets/images/palette/palette_grid_deselected.svg +0 -2
  154. package/assets/images/palette/palette_grid_hover.svg +0 -2
  155. package/assets/images/palette/palette_grid_selected.svg +0 -2
  156. package/assets/images/palette/palette_list_deselected.svg +0 -1
  157. package/assets/images/palette/palette_list_hover.svg +0 -1
  158. package/assets/images/palette/palette_list_selected.svg +0 -1
  159. package/assets/images/palette/palette_open.svg +0 -4
  160. package/assets/images/zoom_to_fit.svg +0 -8
  161. package/dist/canvas-controller-1e71b405.js +0 -2
  162. package/dist/canvas-controller-1e71b405.js.map +0 -1
  163. package/dist/canvas-controller-4bed5320.js +0 -2
  164. package/dist/canvas-controller-4bed5320.js.map +0 -1
  165. package/dist/common-canvas-097c5169.js +0 -2
  166. package/dist/common-canvas-097c5169.js.map +0 -1
  167. package/dist/common-canvas-e13c0858.js +0 -2
  168. package/dist/common-canvas-e13c0858.js.map +0 -1
  169. package/dist/common-properties-706cef87.js +0 -2
  170. package/dist/common-properties-706cef87.js.map +0 -1
  171. package/dist/common-properties-9bd69b61.js +0 -2
  172. package/dist/common-properties-9bd69b61.js.map +0 -1
  173. package/dist/context-menu-wrapper-3a7fdec8.js +0 -2
  174. package/dist/context-menu-wrapper-3a7fdec8.js.map +0 -1
  175. package/dist/context-menu-wrapper-fc85d853.js +0 -2
  176. package/dist/context-menu-wrapper-fc85d853.js.map +0 -1
  177. package/dist/toolbar-918ab52e.js +0 -2
  178. package/dist/toolbar-918ab52e.js.map +0 -1
  179. package/dist/toolbar-fdb750f9.js +0 -2
  180. package/dist/toolbar-fdb750f9.js.map +0 -1
  181. package/src/palette/palette-dialog-topbar-three-way-icon.jsx +0 -82
  182. package/src/toolbar/toolbar-action-sub-area.jsx +0 -126
  183. package/src/toolbar/toolbar-overflow-menu.jsx +0 -77
@@ -16,14 +16,10 @@
16
16
 
17
17
  import React from "react";
18
18
  import PropTypes from "prop-types";
19
- import PaletteDialogTopbarThreeWayIcon from "./palette-dialog-topbar-three-way-icon.jsx";
20
- import Close32Icon from "../../assets/images/palette/close_32.svg";
21
- import PaletteGridSelectedIcon from "../../assets/images/palette/palette_grid_selected.svg";
22
- import PaletteGridHoverIcon from "../../assets/images/palette/palette_grid_hover.svg";
23
- import PaletteGridDeSelectedIcon from "../../assets/images/palette/palette_grid_deselected.svg";
24
- import PaletteListSelectedIcon from "../../assets/images/palette/palette_list_selected.svg";
25
- import PaletteListHoverIcon from "../../assets/images/palette/palette_list_hover.svg";
26
- import PaletteListDeSelectedIcon from "../../assets/images/palette/palette_list_deselected.svg";
19
+
20
+ import { CloseOutline16, Grid16, List16 } from "@carbon/icons-react";
21
+
22
+ import Toolbar from "../toolbar";
27
23
 
28
24
  class PaletteDialogTopbar extends React.Component {
29
25
  constructor(props) {
@@ -34,9 +30,7 @@ class PaletteDialogTopbar extends React.Component {
34
30
 
35
31
  this.mouseDown = this.mouseDown.bind(this);
36
32
  this.doubleClick = this.doubleClick.bind(this);
37
- this.close = this.close.bind(this);
38
- this.gridViewSelected = this.gridViewSelected.bind(this);
39
- this.listViewSelected = this.listViewSelected.bind(this);
33
+ this.toolbarActionHandler = this.toolbarActionHandler.bind(this);
40
34
  }
41
35
 
42
36
  mouseDown(mouseDownEvent) {
@@ -47,40 +41,35 @@ class PaletteDialogTopbar extends React.Component {
47
41
  this.props.windowMaximizeMethod(doubleClickEvent);
48
42
  }
49
43
 
50
- close(closeEvent) {
51
- this.props.canvasController.closePalette(closeEvent);
52
- }
44
+ toolbarActionHandler(action) {
45
+ if (action === "close") {
46
+ this.props.canvasController.closePalette();
53
47
 
54
- gridViewSelected() {
55
- this.props.showGridMethod(true);
56
- }
48
+ } else if (action === "grid") {
49
+ this.props.showGridMethod(true);
57
50
 
58
- listViewSelected() {
59
- this.props.showGridMethod(false);
51
+ } else if (action === "list") {
52
+ this.props.showGridMethod(false);
53
+ }
60
54
  }
61
55
 
62
56
  render() {
57
+ const config = {
58
+ leftBar: [
59
+ { action: "grid", iconEnabled: (<Grid16 />), enable: true, isSelected: this.props.showGrid },
60
+ { action: "list", iconEnabled: (<List16 />), enable: true, isSelected: !this.props.showGrid },
61
+ { divider: true }
62
+ ],
63
+ rightBar: [
64
+ { divider: true },
65
+ { action: "close", iconEnabled: (<CloseOutline16 />), enable: true }
66
+ ]
67
+ };
68
+
69
+
63
70
  return (
64
71
  <div className="palette-dialog-topbar" onMouseDown={this.mouseDown} onDoubleClick={this.doubleClick}>
65
- <span className="left-navbar">
66
- <PaletteDialogTopbarThreeWayIcon iconClickedMethod={this.gridViewSelected}
67
- isSelected={this.props.showGrid}
68
- selectedIconName={PaletteGridSelectedIcon}
69
- hoverIconName={PaletteGridHoverIcon}
70
- deselectedIconName={PaletteGridDeSelectedIcon}
71
- />
72
- <PaletteDialogTopbarThreeWayIcon iconClickedMethod={this.listViewSelected}
73
- isSelected={!this.props.showGrid}
74
- selectedIconName={PaletteListSelectedIcon}
75
- hoverIconName={PaletteListHoverIcon}
76
- deselectedIconName={PaletteListDeSelectedIcon}
77
- />
78
- </span>
79
- <span className="right-navbar">
80
- <a className="secondary-action" onClick={this.close}>
81
- <img src={Close32Icon} draggable="false" className="close-icon" />
82
- </a>
83
- </span>
72
+ <Toolbar instanceId = {0} config={config} toolbarActionHandler={this.toolbarActionHandler} />
84
73
  </div>
85
74
  );
86
75
  }
@@ -31,6 +31,8 @@ class PaletteFlyoutContentCategory extends React.Component {
31
31
  this.onMouseOver = this.onMouseOver.bind(this);
32
32
  this.onMouseLeave = this.onMouseLeave.bind(this);
33
33
  this.categoryClicked = this.categoryClicked.bind(this);
34
+ this.categoryKeyPressed = this.categoryKeyPressed.bind(this);
35
+ this.setPaletteCategory = this.setPaletteCategory.bind(this);
34
36
  }
35
37
 
36
38
  onMouseOver(ev) {
@@ -93,12 +95,22 @@ class PaletteFlyoutContentCategory extends React.Component {
93
95
  return content;
94
96
  }
95
97
 
98
+ setPaletteCategory(isOpen) {
99
+ if (isOpen) {
100
+ this.props.canvasController.closePaletteCategory(this.props.category.id);
101
+ } else {
102
+ this.props.canvasController.openPaletteCategory(this.props.category.id);
103
+ }
104
+ }
105
+
96
106
  // Returns the category object for a regular category.
97
107
  getRenderCategory() {
98
108
  const titleObj = this.getTitleObj();
99
109
  const content = this.getContent();
100
110
  return (
101
- <AccordionItem title={titleObj} open={this.props.category.is_open}>
111
+ <AccordionItem title={titleObj} open={this.props.category.is_open}
112
+ onKeyDown={this.categoryKeyPressed}
113
+ >
102
114
  {content}
103
115
  </AccordionItem>
104
116
  );
@@ -116,7 +128,7 @@ class PaletteFlyoutContentCategory extends React.Component {
116
128
  onMouseOver={this.onMouseOver}
117
129
  onMouseLeave={this.onMouseLeave}
118
130
  >
119
- <div className="palette-flyout-category-item">
131
+ <div className="palette-flyout-category-item" tabIndex={-1}>
120
132
  {itemImage}
121
133
  {itemText}
122
134
  </div></div>
@@ -196,10 +208,17 @@ class PaletteFlyoutContentCategory extends React.Component {
196
208
  // a category is opened.
197
209
  evt.stopPropagation();
198
210
 
199
- if (this.props.category.is_open) {
200
- this.props.canvasController.closePaletteCategory(this.props.category.id);
201
- } else {
202
- this.props.canvasController.openPaletteCategory(this.props.category.id);
211
+ this.setPaletteCategory(this.props.category.is_open);
212
+ }
213
+
214
+ categoryKeyPressed(evt) {
215
+ if (evt.target.className === "bx--accordion__heading") {
216
+ if (evt.code === "Enter" || evt.code === "Space") {
217
+ evt.preventDefault();
218
+ evt.stopPropagation();
219
+
220
+ this.setPaletteCategory(this.props.category.is_open);
221
+ }
203
222
  }
204
223
  }
205
224
 
@@ -99,11 +99,17 @@ $palette-search-container-height: 41px;
99
99
  /* This stops it being dragged incorrectly.*/
100
100
  user-select: none;
101
101
  width: 100%;
102
+ outline: none; // Turn outline off and use carbon style for focus below.
102
103
 
103
104
  &:hover {
104
105
  background-color: $ui-03;
105
106
  }
106
107
 
108
+ &:focus {
109
+ border-color: $interactive-03;
110
+ box-shadow: inset 0 0 0 2px $interactive-03;
111
+ }
112
+
107
113
  .palette-list-item-category-label {
108
114
  @include carbon--type-style("caption-01");
109
115
  width: 100%;
@@ -414,47 +420,9 @@ $palette-search-container-height: 41px;
414
420
  }
415
421
 
416
422
  .palette-dialog-topbar {
417
- height: 40px;
418
- padding: 10px;
423
+ height: 41px;
419
424
  background-color: $ui-03;
420
425
  border-bottom: $palette-border-width solid $palette-border-color;
421
-
422
- .left-navbar {
423
- height: 20px;
424
- float: left;
425
- vertical-align: middle;
426
- /* Prevent elements from being selectable */
427
- /* This stops it being dragged incorrectly.*/
428
- user-select: none;
429
- }
430
-
431
- .right-navbar {
432
- height: 20px;
433
- float: right;
434
- vertical-align: middle;
435
- }
436
-
437
- .secondary-action {
438
- margin-left: 10px;
439
- display: inline-block;
440
- cursor: pointer;
441
- width: 20px;
442
- }
443
-
444
- .close-icon svg {
445
- fill: $interactive-02;
446
- }
447
-
448
- .palette-three-way-icon-div {
449
- margin-left: 5px;
450
- display: inline-block;
451
- cursor: pointer;
452
- width: 20px;
453
- height: 20px;
454
- /* Prevent elements from being selectable */
455
- /* This stops it being dragged incorrectly.*/
456
- user-select: none;
457
- }
458
426
  }
459
427
 
460
428
  .palette-dialog-content {
@@ -466,7 +434,7 @@ $palette-search-container-height: 41px;
466
434
  }
467
435
 
468
436
  .palette-dialog-categories {
469
- background-color: $ui-03;
437
+ background-color: $ui-01;
470
438
  width: 130px;
471
439
  min-width: 130px; /* Set a min-width to ensure space for the scroll bar when it is displayed */
472
440
  border-right: $palette-border-width solid $palette-border-color;
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Copyright 2017-2023 Elyra Authors
2
+ * Copyright 2024 Elyra Authors
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
5
5
  * you may not use this file except in compliance with the License.
@@ -14,20 +14,5 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- export const genElementByClass = (className, containingDiv) => {
18
- const elements = containingDiv.getElementsByClassName(className);
19
-
20
- if (elements && elements.length > 0) {
21
- return elements[0];
22
- }
23
- return null;
24
- };
25
-
26
- export const genRectByClass = (className, containingDiv) => {
27
- const element = genElementByClass(className, containingDiv);
28
-
29
- if (element) {
30
- return element.getBoundingClientRect();
31
- }
32
- return null;
33
- };
17
+ import Toolbar from "./toolbar.jsx";
18
+ export default Toolbar;