@elyra/canvas 12.11.2 → 12.12.2

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 (173) hide show
  1. package/dist/_baseForOwn-7d4e8506.js +2 -0
  2. package/dist/_baseForOwn-7d4e8506.js.map +1 -0
  3. package/dist/_baseForOwn-d38b560e.js +2 -0
  4. package/dist/_baseForOwn-d38b560e.js.map +1 -0
  5. package/dist/canvas-constants-34cdb7df.js +2 -0
  6. package/dist/canvas-constants-34cdb7df.js.map +1 -0
  7. package/dist/canvas-constants-3c09c7f6.js +2 -0
  8. package/dist/canvas-constants-3c09c7f6.js.map +1 -0
  9. package/dist/canvas-controller-de76a796.js +2 -0
  10. package/dist/canvas-controller-de76a796.js.map +1 -0
  11. package/dist/canvas-controller-e91d037b.js +2 -0
  12. package/dist/canvas-controller-e91d037b.js.map +1 -0
  13. package/dist/canvas-logger-815781bb.js.map +1 -1
  14. package/dist/canvas-logger-a0f1beaa.js.map +1 -1
  15. package/dist/common-canvas-522f6263.js +2 -0
  16. package/dist/common-canvas-522f6263.js.map +1 -0
  17. package/dist/common-canvas-90539c97.js +2 -0
  18. package/dist/common-canvas-90539c97.js.map +1 -0
  19. package/dist/common-canvas.es.js +1 -1
  20. package/dist/common-canvas.es.js.map +1 -1
  21. package/dist/common-canvas.js +1 -1
  22. package/dist/common-canvas.js.map +1 -1
  23. package/dist/common-properties-245c4711.js +2 -0
  24. package/dist/common-properties-245c4711.js.map +1 -0
  25. package/dist/common-properties-49e6bb67.js +2 -0
  26. package/dist/common-properties-49e6bb67.js.map +1 -0
  27. package/dist/{datarecord-metadata-v3-schema-d7ad05cd.js → datarecord-metadata-v3-schema-6b6384ff.js} +2 -2
  28. package/dist/{datarecord-metadata-v3-schema-d7ad05cd.js.map → datarecord-metadata-v3-schema-6b6384ff.js.map} +1 -1
  29. package/dist/{datarecord-metadata-v3-schema-bda88f2e.js → datarecord-metadata-v3-schema-81228a9a.js} +2 -2
  30. package/dist/{datarecord-metadata-v3-schema-bda88f2e.js.map → datarecord-metadata-v3-schema-81228a9a.js.map} +1 -1
  31. package/dist/en-7a0f1db1.js +2 -0
  32. package/dist/en-7a0f1db1.js.map +1 -0
  33. package/dist/en-8647c347.js +2 -0
  34. package/dist/en-8647c347.js.map +1 -0
  35. package/dist/{extends-39f57612.js → extends-7fdcdc52.js} +2 -2
  36. package/dist/{extends-39f57612.js.map → extends-7fdcdc52.js.map} +1 -1
  37. package/dist/extends-8d17c85c.js +7 -0
  38. package/dist/extends-8d17c85c.js.map +1 -0
  39. package/dist/flexible-table-50ce600a.js +2 -0
  40. package/dist/flexible-table-50ce600a.js.map +1 -0
  41. package/dist/flexible-table-a13cb7d0.js +2 -0
  42. package/dist/flexible-table-a13cb7d0.js.map +1 -0
  43. package/dist/getPrototypeOf-a1c3fe64.js +2 -0
  44. package/dist/getPrototypeOf-a1c3fe64.js.map +1 -0
  45. package/dist/getPrototypeOf-bf88242f.js +2 -0
  46. package/dist/getPrototypeOf-bf88242f.js.map +1 -0
  47. package/dist/{icon-d6909a68.js → icon-4882a57f.js} +2 -2
  48. package/dist/{icon-d6909a68.js.map → icon-4882a57f.js.map} +1 -1
  49. package/dist/{icon-811ffddd.js → icon-bf77b2aa.js} +2 -2
  50. package/dist/{icon-811ffddd.js.map → icon-bf77b2aa.js.map} +1 -1
  51. package/dist/index-0e6c8b9c.js +2 -0
  52. package/dist/index-0e6c8b9c.js.map +1 -0
  53. package/dist/index-f2c306ba.js +2 -0
  54. package/dist/index-f2c306ba.js.map +1 -0
  55. package/dist/isArrayLikeObject-a9c7973b.js +2 -0
  56. package/dist/isArrayLikeObject-a9c7973b.js.map +1 -0
  57. package/dist/isArrayLikeObject-f3b27f64.js +2 -0
  58. package/dist/isArrayLikeObject-f3b27f64.js.map +1 -0
  59. package/dist/lib/canvas-controller.es.js +1 -1
  60. package/dist/lib/canvas-controller.js +1 -1
  61. package/dist/lib/canvas.es.js +1 -1
  62. package/dist/lib/canvas.js +1 -1
  63. package/dist/lib/command-stack.es.js +1 -1
  64. package/dist/lib/command-stack.es.js.map +1 -1
  65. package/dist/lib/command-stack.js +1 -1
  66. package/dist/lib/command-stack.js.map +1 -1
  67. package/dist/lib/context-menu.es.js +1 -1
  68. package/dist/lib/context-menu.es.js.map +1 -1
  69. package/dist/lib/context-menu.js +1 -1
  70. package/dist/lib/context-menu.js.map +1 -1
  71. package/dist/lib/properties/field-picker.es.js +1 -1
  72. package/dist/lib/properties/field-picker.js +1 -1
  73. package/dist/lib/properties/flexible-table.es.js +1 -1
  74. package/dist/lib/properties/flexible-table.js +1 -1
  75. package/dist/lib/properties.es.js +1 -1
  76. package/dist/lib/properties.js +1 -1
  77. package/dist/lib/tooltip.es.js +1 -1
  78. package/dist/lib/tooltip.es.js.map +1 -1
  79. package/dist/lib/tooltip.js +1 -1
  80. package/dist/lib/tooltip.js.map +1 -1
  81. package/dist/styles/common-canvas.min.css +1 -1
  82. package/dist/styles/common-canvas.min.css.map +1 -1
  83. package/dist/{toolbar-85e6c77b.js → toolbar-1c181339.js} +2 -2
  84. package/dist/{toolbar-335252dd.js.map → toolbar-1c181339.js.map} +1 -1
  85. package/dist/{toolbar-335252dd.js → toolbar-c6fa3cdb.js} +2 -2
  86. package/dist/{toolbar-85e6c77b.js.map → toolbar-c6fa3cdb.js.map} +1 -1
  87. package/locales/command-actions/locales/en.json +8 -8
  88. package/locales/command-actions/locales/eo.json +8 -8
  89. package/locales/common-canvas/locales/en.json +1 -1
  90. package/package.json +9 -10
  91. package/src/command-actions/sizeAndPositionObjectsAction.js +9 -4
  92. package/src/command-stack/command-stack.js +16 -30
  93. package/src/command-stack/internal-stack.js +89 -0
  94. package/src/common-canvas/canvas-controller.js +43 -6
  95. package/src/common-canvas/cc-toolbar.jsx +10 -0
  96. package/src/common-canvas/common-canvas-utils.js +55 -1
  97. package/src/common-canvas/common-canvas.scss +3 -1
  98. package/src/common-canvas/constants/canvas-constants.js +12 -0
  99. package/src/common-canvas/svg-canvas-d3.js +8 -0
  100. package/src/common-canvas/svg-canvas-renderer.js +360 -130
  101. package/src/common-canvas/svg-canvas-utils-links.js +61 -26
  102. package/src/common-properties/actions/button/button.jsx +45 -13
  103. package/src/common-properties/actions/button/button.scss +4 -8
  104. package/src/common-properties/common-properties.jsx +2 -1
  105. package/src/common-properties/components/control-item/control-item.jsx +7 -1
  106. package/src/common-properties/components/field-picker/field-picker.jsx +7 -8
  107. package/src/common-properties/components/flexible-table/flexible-table.jsx +45 -10
  108. package/src/common-properties/components/virtualized-table/virtualized-table.jsx +72 -20
  109. package/src/common-properties/constants/constants.js +18 -0
  110. package/src/common-properties/controls/abstract-table.jsx +3 -3
  111. package/src/common-properties/controls/checkbox/checkbox.jsx +6 -0
  112. package/src/common-properties/controls/expression/expression-builder/expression-builder.jsx +6 -5
  113. package/src/common-properties/controls/expression/expression-builder/expression-select-field-function.jsx +4 -2
  114. package/src/common-properties/controls/expression/expression.jsx +10 -4
  115. package/src/common-properties/controls/expression/expression.scss +2 -0
  116. package/src/common-properties/controls/multiselect/multiselect.jsx +4 -4
  117. package/src/common-properties/controls/someofselect/someofselect.jsx +1 -1
  118. package/src/common-properties/form/ActionInfo.js +3 -1
  119. package/src/common-properties/form/EditorForm.js +7 -3
  120. package/src/common-properties/properties-controller.js +2 -1
  121. package/src/common-properties/properties-main/properties-main.jsx +4 -2
  122. package/src/common-properties/util/L10nProvider.js +3 -0
  123. package/src/object-model/api-pipeline.js +7 -11
  124. package/src/object-model/config-utils.js +1 -0
  125. package/src/object-model/object-model.js +73 -22
  126. package/src/object-model/pipeline-in-handler.js +8 -0
  127. package/src/object-model/pipeline-out-handler.js +5 -0
  128. package/src/object-model/redux/canvas-store.js +16 -0
  129. package/src/object-model/redux/reducers/canvasinfo.js +12 -8
  130. package/src/object-model/redux/reducers/canvastoolbar.js +6 -0
  131. package/src/object-model/redux/reducers/nodes.js +11 -0
  132. package/src/toolbar/toolbar-action-item.jsx +2 -2
  133. package/src/tooltip/tooltip.jsx +30 -1
  134. package/src/tooltip/tooltip.scss +11 -0
  135. package/stats.html +1 -1
  136. package/dist/canvas-constants-7f93e705.js +0 -2
  137. package/dist/canvas-constants-7f93e705.js.map +0 -1
  138. package/dist/canvas-constants-ac5daafb.js +0 -2
  139. package/dist/canvas-constants-ac5daafb.js.map +0 -1
  140. package/dist/canvas-controller-190542a6.js +0 -2
  141. package/dist/canvas-controller-190542a6.js.map +0 -1
  142. package/dist/canvas-controller-cbee8dd7.js +0 -2
  143. package/dist/canvas-controller-cbee8dd7.js.map +0 -1
  144. package/dist/common-canvas-8d2ddc6b.js +0 -2
  145. package/dist/common-canvas-8d2ddc6b.js.map +0 -1
  146. package/dist/common-canvas-e0a57cdb.js +0 -2
  147. package/dist/common-canvas-e0a57cdb.js.map +0 -1
  148. package/dist/common-properties-09ec10eb.js +0 -2
  149. package/dist/common-properties-09ec10eb.js.map +0 -1
  150. package/dist/common-properties-f1b96e0f.js +0 -2
  151. package/dist/common-properties-f1b96e0f.js.map +0 -1
  152. package/dist/en-2ed89528.js +0 -2
  153. package/dist/en-2ed89528.js.map +0 -1
  154. package/dist/en-e93855cc.js +0 -2
  155. package/dist/en-e93855cc.js.map +0 -1
  156. package/dist/extends-51d9ddcc.js +0 -7
  157. package/dist/extends-51d9ddcc.js.map +0 -1
  158. package/dist/flexible-table-154a3359.js +0 -2
  159. package/dist/flexible-table-154a3359.js.map +0 -1
  160. package/dist/flexible-table-5e4a1e6d.js +0 -2
  161. package/dist/flexible-table-5e4a1e6d.js.map +0 -1
  162. package/dist/getPrototypeOf-0bf77a9e.js +0 -2
  163. package/dist/getPrototypeOf-0bf77a9e.js.map +0 -1
  164. package/dist/getPrototypeOf-97272efe.js +0 -2
  165. package/dist/getPrototypeOf-97272efe.js.map +0 -1
  166. package/dist/index-4fd90a14.js +0 -2
  167. package/dist/index-4fd90a14.js.map +0 -1
  168. package/dist/index-6d138021.js +0 -2
  169. package/dist/index-6d138021.js.map +0 -1
  170. package/dist/isArrayLikeObject-31e5e646.js +0 -2
  171. package/dist/isArrayLikeObject-31e5e646.js.map +0 -1
  172. package/dist/isArrayLikeObject-7c33c7fd.js +0 -2
  173. package/dist/isArrayLikeObject-7c33c7fd.js.map +0 -1
@@ -20,6 +20,7 @@
20
20
  import React from "react";
21
21
  import PropTypes from "prop-types";
22
22
  import { Portal } from "react-portal";
23
+ import { Link } from "carbon-components-react";
23
24
 
24
25
  class ToolTip extends React.Component {
25
26
  constructor(props) {
@@ -325,6 +326,10 @@ class ToolTip extends React.Component {
325
326
  }
326
327
  }
327
328
 
329
+ tooltipLinkOnClick(url) {
330
+ window.open(url, "_blank", "noopener");
331
+ }
332
+
328
333
  render() {
329
334
  let tooltipContent = null;
330
335
  let triggerContent = null;
@@ -336,7 +341,13 @@ class ToolTip extends React.Component {
336
341
  // `focus` event occurs before `click`. Adding timeout in onFocus function to ensure click is executed first.
337
342
  // Ref - https://stackoverflow.com/a/49512400
338
343
  const onFocus = () => this.showTooltipWithDelay();
339
- const onBlur = () => this.setTooltipVisible(false);
344
+ const onBlur = (evt) => {
345
+ // Keep tooltip visible when clicked on a link.
346
+ // Since link is an anchor tag without "href" attribute, it has relatedTarget=null
347
+ if (evt.relatedTarget !== null) {
348
+ this.setTooltipVisible(false);
349
+ }
350
+ };
340
351
  const click = (evt) => this.toggleTooltipOnClick(evt);
341
352
 
342
353
  triggerContent = (<div
@@ -374,6 +385,21 @@ class ToolTip extends React.Component {
374
385
  tipClass += " " + this.props.className;
375
386
  }
376
387
 
388
+ let link = null;
389
+ if (this.state.isTooltipVisible && this.props.tooltipLinkHandler && this.props.link) {
390
+ const linkInformation = this.props.tooltipLinkHandler(this.props.link);
391
+ // Verify tooltipLinkHandler returns object in correct format
392
+ if (typeof linkInformation === "object" && linkInformation.label && linkInformation.url) {
393
+ link = (<Link
394
+ className="tooltip-link"
395
+ id={this.props.link.id}
396
+ onClick={this.tooltipLinkOnClick.bind(this, linkInformation.url)}
397
+ >
398
+ {linkInformation.label}
399
+ </Link>);
400
+ }
401
+ }
402
+
377
403
  return (
378
404
  <div className="tooltip-container">
379
405
  {triggerContent}
@@ -384,6 +410,7 @@ class ToolTip extends React.Component {
384
410
  <polygon points="8.1,16.1 0,8.1 8.1,0 8.1,1.4 1.4,8.1 8.1,14.7" />
385
411
  </svg>
386
412
  {tooltipContent}
413
+ {link}
387
414
  </div>
388
415
  </Portal>
389
416
  </div>
@@ -393,6 +420,8 @@ class ToolTip extends React.Component {
393
420
 
394
421
  ToolTip.propTypes = {
395
422
  tip: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).isRequired,
423
+ link: PropTypes.object,
424
+ tooltipLinkHandler: PropTypes.func,
396
425
  direction: PropTypes.oneOf(["left", "right", "top", "bottom"]),
397
426
  children: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
398
427
  targetObj: PropTypes.object,
@@ -34,6 +34,17 @@
34
34
  word-wrap: break-word;
35
35
  max-width: 228px;
36
36
  border-radius: 2px;
37
+ .bx--link {
38
+ display: block;
39
+ color: $inverse-link;
40
+ margin-top: $spacing-05;
41
+ pointer-events: auto; // To make link clickable inside tooltip
42
+ cursor: pointer;
43
+ &:hover {
44
+ color: $inverse-link;
45
+ text-decoration: underline;
46
+ }
47
+ }
37
48
  }
38
49
 
39
50
  .common-canvas-tooltip[direction="right"] {