@elyra/canvas 12.44.0 → 12.45.1

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 (74) hide show
  1. package/dist/{canvas-constants-69e90162.js → canvas-constants-3bbfc8b1.js} +2 -2
  2. package/dist/{canvas-constants-69e90162.js.map → canvas-constants-3bbfc8b1.js.map} +1 -1
  3. package/dist/{canvas-constants-089e7830.js → canvas-constants-8d240dc6.js} +2 -2
  4. package/dist/{canvas-constants-089e7830.js.map → canvas-constants-8d240dc6.js.map} +1 -1
  5. package/dist/{canvas-controller-c6274fad.js → canvas-controller-024d7fa4.js} +2 -2
  6. package/dist/{canvas-controller-c6274fad.js.map → canvas-controller-024d7fa4.js.map} +1 -1
  7. package/dist/{canvas-controller-3e6b8ce4.js → canvas-controller-0c83caa0.js} +2 -2
  8. package/dist/{canvas-controller-3e6b8ce4.js.map → canvas-controller-0c83caa0.js.map} +1 -1
  9. package/dist/common-canvas-39d943f9.js +2 -0
  10. package/dist/common-canvas-39d943f9.js.map +1 -0
  11. package/dist/common-canvas-e831aa7c.js +2 -0
  12. package/dist/common-canvas-e831aa7c.js.map +1 -0
  13. package/dist/common-canvas.es.js +1 -1
  14. package/dist/common-canvas.js +1 -1
  15. package/dist/common-properties-cc1584aa.js +2 -0
  16. package/dist/common-properties-cc1584aa.js.map +1 -0
  17. package/dist/common-properties-cdedfd5c.js +2 -0
  18. package/dist/common-properties-cdedfd5c.js.map +1 -0
  19. package/dist/{datarecord-metadata-v3-schema-07d18e19.js → datarecord-metadata-v3-schema-2311ecab.js} +2 -2
  20. package/dist/{datarecord-metadata-v3-schema-07d18e19.js.map → datarecord-metadata-v3-schema-2311ecab.js.map} +1 -1
  21. package/dist/{datarecord-metadata-v3-schema-df939dd1.js → datarecord-metadata-v3-schema-d279dbb0.js} +2 -2
  22. package/dist/{datarecord-metadata-v3-schema-df939dd1.js.map → datarecord-metadata-v3-schema-d279dbb0.js.map} +1 -1
  23. package/dist/{icon-56b27c4f.js → icon-65758bb8.js} +2 -2
  24. package/dist/{icon-56b27c4f.js.map → icon-65758bb8.js.map} +1 -1
  25. package/dist/{icon-8ec2f0ec.js → icon-b3738f1f.js} +2 -2
  26. package/dist/{icon-8ec2f0ec.js.map → icon-b3738f1f.js.map} +1 -1
  27. package/dist/{index-79543d41.js → index-9eeda306.js} +2 -2
  28. package/dist/{index-79543d41.js.map → index-9eeda306.js.map} +1 -1
  29. package/dist/{index-01cbacf9.js → index-d3371fd0.js} +2 -2
  30. package/dist/{index-01cbacf9.js.map → index-d3371fd0.js.map} +1 -1
  31. package/dist/lib/canvas-controller.es.js +1 -1
  32. package/dist/lib/canvas-controller.js +1 -1
  33. package/dist/lib/canvas.es.js +1 -1
  34. package/dist/lib/canvas.js +1 -1
  35. package/dist/lib/command-stack.es.js +1 -1
  36. package/dist/lib/command-stack.es.js.map +1 -1
  37. package/dist/lib/command-stack.js +1 -1
  38. package/dist/lib/command-stack.js.map +1 -1
  39. package/dist/lib/properties/field-picker.es.js +1 -1
  40. package/dist/lib/properties/field-picker.js +1 -1
  41. package/dist/lib/properties.es.js +1 -1
  42. package/dist/lib/properties.js +1 -1
  43. package/dist/styles/common-canvas.min.css +1 -1
  44. package/dist/styles/common-canvas.min.css.map +1 -1
  45. package/dist/{toolbar-6607e35c.js → toolbar-6af353fa.js} +2 -2
  46. package/dist/{toolbar-6607e35c.js.map → toolbar-6af353fa.js.map} +1 -1
  47. package/dist/{toolbar-235dfb9d.js → toolbar-c4e22755.js} +2 -2
  48. package/dist/{toolbar-235dfb9d.js.map → toolbar-c4e22755.js.map} +1 -1
  49. package/locales/command-actions/locales/en.json +1 -0
  50. package/locales/command-actions/locales/eo.json +1 -0
  51. package/package.json +2 -2
  52. package/src/command-actions/sizeAndPositionObjectsAction.js +4 -0
  53. package/src/command-stack/command-stack.js +4 -0
  54. package/src/common-canvas/canvas-controller.js +37 -15
  55. package/src/common-canvas/cc-context-toolbar.jsx +46 -2
  56. package/src/common-canvas/cc-toolbar.jsx +3 -0
  57. package/src/common-canvas/svg-canvas-d3.js +2 -2
  58. package/src/common-canvas/svg-canvas-pipeline.js +1 -1
  59. package/src/common-canvas/svg-canvas-renderer.js +2 -2
  60. package/src/common-canvas/svg-canvas-utils-drag-objects.js +3 -0
  61. package/src/common-canvas/svg-canvas-utils-zoom.js +5 -4
  62. package/src/common-properties/form/ControlInfo.js +1 -1
  63. package/src/object-model/object-model.js +1 -1
  64. package/src/toolbar/toolbar.jsx +1 -1
  65. package/src/toolbar/toolbar.scss +28 -31
  66. package/stats.html +1 -1
  67. package/dist/common-canvas-6ed21ab6.js +0 -2
  68. package/dist/common-canvas-6ed21ab6.js.map +0 -1
  69. package/dist/common-canvas-8abf016c.js +0 -2
  70. package/dist/common-canvas-8abf016c.js.map +0 -1
  71. package/dist/common-properties-88377242.js +0 -2
  72. package/dist/common-properties-88377242.js.map +0 -1
  73. package/dist/common-properties-b295acc8.js +0 -2
  74. package/dist/common-properties-b295acc8.js.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("./isArrayLikeObject-04f333a5.js"),t=require("./datarecord-metadata-v3-schema-df939dd1.js"),n=require("./createClass-155bf7da.js"),o=require("./inherits-75817f22.js"),s=require("react"),i=require("react-resize-detector"),r=require("./lib/tooltip.js"),a=require("carbon-components-react"),u=require("react-inlinesvg"),c=require("./_baseIteratee-2b75d27c.js"),l=require("@carbon/icons-react"),p=require("./canvas-constants-089e7830.js"),f=require("uuid");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=h(s),b=h(i),v=h(u),A=/\s/;var m=function(e){for(var t=e.length;t--&&A.test(e.charAt(t)););return t},O=/^\s+/;var g=function(e){return e?e.slice(0,m(e)+1).replace(O,""):e},y=e.isObject_1,C=e.isSymbol_1,I=/^[-+]0x[0-9a-f]+$/i,R=/^0b[01]+$/i,E=/^0o[0-7]+$/i,k=parseInt;var D=function(e){if("number"==typeof e)return e;if(C(e))return NaN;if(y(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=y(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=g(e);var n=R.test(e);return n||E.test(e)?k(e.slice(2),n?2:8):I.test(e)?NaN:+e},F=D,S=1/0;var M=function(e){return e?(e=F(e))===S||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0};var x=function(e){var t=M(e),n=t%1;return t==t?n?t-n:t:0};function T(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,_()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function _(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(_=function(){return!!e})()}var w=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=T(this,t,[e])).buttonRef=d.default.createRef(),o}return o._inherits(t,e),n._createClass(t,[{key:"componentDidUpdate",value:function(){if(this.props.isFocusInToolbar&&this.props.buttonFocusAction===this.props.actionObj.action){var e=this.buttonRef.current.querySelector(".toolbar-jsx-obj");if(e)return void e.focus();this.buttonRef.current.focus()}}},{key:"getDefaultIcon",value:function(e){var t=!e.enable;switch(e.action){case p.TOOLBAR_STOP:return d.default.createElement(l.StopFilledAlt16,{disabled:t});case p.TOOLBAR_RUN:return d.default.createElement(l.Play16,{disabled:t});case p.TOOLBAR_EXPAND_SUPERNODE_IN_PLACE:return d.default.createElement(l.Maximize16,{disabled:t});case p.TOOLBAR_COLLAPSE_SUPERNODE_IN_PLACE:return d.default.createElement(l.Minimize16,{disabled:t});case p.TOOLBAR_EXPAND_SUPERNODE_FULL_PAGE:return d.default.createElement(l.Launch16,{disabled:t});case p.TOOLBAR_UNDO:return d.default.createElement(l.Undo16,{disabled:t});case p.TOOLBAR_REDO:return d.default.createElement(l.Redo16,{disabled:t});case p.TOOLBAR_CLIPBOARD:return d.default.createElement(l.Result16,{disabled:t});case p.TOOLBAR_CUT:return d.default.createElement(l.Cut16,{disabled:t});case p.TOOLBAR_COPY:return d.default.createElement(l.Copy16,{disabled:t});case p.TOOLBAR_PASTE:return d.default.createElement(l.Paste16,{disabled:t});case p.TOOLBAR_CREATE_COMMENT:case p.TOOLBAR_CREATE_AUTO_COMMENT:return d.default.createElement(l.AddComment16,{disabled:t});case p.TOOLBAR_SHOW_COMMENTS:return d.default.createElement(l.Chat16,{disabled:t});case p.TOOLBAR_HIDE_COMMENTS:return d.default.createElement(l.ChatOff16,{disabled:t});case p.TOOLBAR_COLOR_BACKGROUND:return d.default.createElement(l.ColorPalette16,{disabled:t});case p.TOOLBAR_DELETE_LINK:case p.TOOLBAR_DELETE_SELECTED_OBJECTS:return d.default.createElement(l.TrashCan16,{disabled:t});case p.TOOLBAR_SET_COMMENT_EDIT_MODE:case p.TOOLBAR_SET_NODE_LABEL_EDIT:return d.default.createElement(l.Edit16,{disabled:t});case p.TOOLBAR_ZOOM_IN:return d.default.createElement(l.ZoomIn16,{disabled:t});case p.TOOLBAR_ZOOM_OUT:return d.default.createElement(l.ZoomOut16,{disabled:t});case p.TOOLBAR_ZOOM_FIT:return d.default.createElement(l.CenterToFit16,{disabled:t});case p.TOOLBAR_OPEN_PALETTE:case p.TOOLBAR_CLOSE_PALETTE:case p.TOOLBAR_TOGGLE_PALETTE:return d.default.createElement(l.OpenPanelFilledLeft16,{disabled:t});case p.TOOLBAR_ARRANGE_HORIZONALLY:return d.default.createElement(v.default,{src:"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Crect%20x%3D%221.5%22%20y%3D%222%22%20width%3D%2213%22%20height%3D%221%22%2F%3E%3Crect%20x%3D%221.5%22%20y%3D%2213%22%20width%3D%2213%22%20height%3D%221%22%2F%3E%3Cpath%20d%3D%22M7%2C10.5H2a.47.47%2C0%2C0%2C1-.5-.5V6A.47.47%2C0%2C0%2C1%2C2%2C5.5H7a.47.47%2C0%2C0%2C1%2C.5.5v4A.47.47%2C0%2C0%2C1%2C7%2C10.5Zm-4.5-1h4v-3h-4Z%22%2F%3E%3Cpath%20d%3D%22M14%2C10.5H9a.47.47%2C0%2C0%2C1-.5-.5V6A.47.47%2C0%2C0%2C1%2C9%2C5.5h5a.47.47%2C0%2C0%2C1%2C.5.5v4A.47.47%2C0%2C0%2C1%2C14%2C10.5Zm-4.5-1h4v-3h-4Z%22%2F%3E%3C%2Fsvg%3E",disabled:t});case p.TOOLBAR_ARRANGE_VERTICALLY:return d.default.createElement(v.default,{src:"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Crect%20x%3D%222%22%20y%3D%221.5%22%20width%3D%221%22%20height%3D%2213%22%2F%3E%3Crect%20x%3D%2213%22%20y%3D%221.5%22%20width%3D%221%22%20height%3D%2213%22%2F%3E%3Cpath%20d%3D%22M10.5%2C7.5h-5A.47.47%2C0%2C0%2C1%2C5%2C7V3a.47.47%2C0%2C0%2C1%2C.5-.5h5A.47.47%2C0%2C0%2C1%2C11%2C3V7A.47.47%2C0%2C0%2C1%2C10.5%2C7.5ZM6%2C6.5h4v-3H6Z%22%2F%3E%3Cpath%20d%3D%22M10.5%2C13.5h-5A.47.47%2C0%2C0%2C1%2C5%2C13V9a.47.47%2C0%2C0%2C1%2C.5-.5h5A.47.47%2C0%2C0%2C1%2C11%2C9v4A.47.47%2C0%2C0%2C1%2C10.5%2C13.5ZM6%2C12.5h4v-3H6Z%22%2F%3E%3C%2Fsvg%3E",disabled:t});case p.TOOLBAR_TOGGLE_NOTIFICATION_PANEL:return d.default.createElement(v.default,{src:"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%20fill%3D%22currentColor%22%3E%20%3Cpath%20d%3D%22M27%2C12V27H5V5H20V3H5A2%2C2%2C0%2C0%2C0%2C3%2C5V27a2%2C2%2C0%2C0%2C0%2C2%2C2H27a2%2C2%2C0%2C0%2C0%2C2-2V12Z%22%2F%3E%20%3Ccircle%20class%3D%22dot%22%20cx%3D%2226.5%22%20cy%3D%225.5%22%20r%3D%223.5%22%2F%3E%3C%2Fsvg%3E",disabled:t});default:return null}}},{key:"generateLabel",value:function(e,t,n,o){var s="toolbar-icon-label";return s+=this.generateLabelType(n,o),s+=t?" disabled":"",d.default.createElement("div",{className:s},e)}},{key:"generateLabelType",value:function(e,t){return e?" overflow":"before"===t?" before":"after"===t?" after":""}},{key:"generateIcon",value:function(e){var t=this.getDefaultIcon(e);if(e.iconEnabled){var n=e.iconEnabled,o=e.iconDisabled||e.iconEnabled,s=e.enable?n:o,i="toolbar-icon-"+this.props.instanceId+" -"+e.action;t="string"==typeof s?d.default.createElement(v.default,{id:i,src:s,disabled:!e.enable}):s}return t?d.default.createElement("div",{className:"toolbar-icon"},t):null}},{key:"generateRegularItem",value:function(e){var t=null,n=null;this.props.isInMenu?n=this.generateLabel(e.label,!e.enable,!0):"before"===e.incLabelWithIcon?t=this.generateLabel(e.label,!e.enable,!1,e.incLabelWithIcon):"after"===e.incLabelWithIcon&&(n=this.generateLabel(e.label,!e.enable,!1,e.incLabelWithIcon));var o=this.generateIcon(e),s=e.textContent?d.default.createElement("div",{className:"toolbar-text-content"}," ",e.textContent," "):null,i=c.classNames("toolbar-item-content",{overflow:this.props.isInMenu,disabled:!e.enable,default:!e.kind}),r=e.kind||"ghost",u=this.generateChevronIcon(e),l=d.default.createElement("div",{className:i},t,o,n,s,u);l=this.wrapInTooltip(l);var p=e.incLabelWithIcon?null:e.label,f=this.props.buttonFocusAction===e.action?0:-1;return d.default.createElement(a.Button,{kind:r,ref:this.buttonRef,onClick:this.props.actionClickHandler,disabled:!e.enable,"aria-label":p,size:this.props.size,tabIndex:f},l)}},{key:"generateChevronIcon",value:function(e){if(e.subMenu||e.subPanel){if(this.props.isInMenu)return d.default.createElement(l.ChevronRight16,null);if("before"===e.incLabelWithIcon||"after"===e.incLabelWithIcon){var t=this.props.subAreaDisplayed?d.default.createElement(l.ChevronUp16,null):d.default.createElement(l.ChevronDown16,null);return d.default.createElement("div",{className:"toolbar-up-down-chevron"},t)}return this.generateChevronMini()}return null}},{key:"generateChevronMini",value:function(){var e="sm"===this.props.size?"M 29 29 L 29 23 23 29 Z":"M 37 37 L 37 30 30 37 Z";return d.default.createElement("svg",{className:"toolbar-tick-svg"},d.default.createElement("path",{d:e,className:"toolbar-tick-mark"}))}},{key:"generateJsxItem",value:function(e){var t=null;if("function"==typeof e.jsx){var n=this.props.buttonFocusAction===e.action?0:-1;t=e.jsx(n)}else t=e.jsx;var o=this.wrapInTooltip(t);return d.default.createElement("div",{ref:this.buttonRef},o)}},{key:"wrapInTooltip",value:function(e){if(!this.props.isInMenu&&(this.showLabelAsTip(this.props.actionObj)||this.props.actionObj.tooltip)){var t=this.props.actionObj.tooltip?this.props.actionObj.tooltip:this.props.actionObj.label,n=this.props.actionName+"-"+this.props.instanceId+"-tooltip",o=this.props.actionObj.enable||this.props.actionObj.jsx,s=this.props.tooltipDirection?this.props.tooltipDirection:"bottom";return d.default.createElement(r,{id:n,tip:t,disable:!o,className:"icon-tooltip",direction:s},e)}return e}},{key:"showLabelAsTip",value:function(e){return!!e.label&&("before"!==e.incLabelWithIcon&&"after"!==e.incLabelWithIcon)}},{key:"render",value:function(){var e=this.props.actionObj;return e.jsx?this.generateJsxItem(e):this.generateRegularItem(e)}}])}(d.default.Component);function L(e,t,n,o){if(e&&o&&t){var s=document.getElementById(t),i=s?s.getBoundingClientRect():{top:-1e3,bottom:1e3,left:-1e3,right:1e3},r=e.getBoundingClientRect(),a=r.bottom-i.bottom,u=r.right-i.right;if("vertical"===n){if(a>0){var c=o.top-i.top>r.height?o.top-r.height:o.bottom-a;e.style.top=c+"px"}if(u>0){var l=o.left-u;e.style.left=l+"px"}}else{if(a>0){var p=r.top-a-2;e.style.top=p+"px"}if(u>0){var f=o.left-r.width;e.style.left=f+"px"}}}}function B(e,t){return t?"vertical"===e?{top:t.bottom+1,left:t.left}:{top:t.top-1,left:t.left+t.width}:null}function j(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,N()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function N(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(N=function(){return!!e})()}var P=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=j(this,t,[e])).onKeyDown=o.onKeyDown.bind(o),o.closeSubPanel=o.closeSubPanel.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentDidMount",value:function(){L(this.areaRef,this.props.containingDivId,this.props.expandDirection,this.props.actionItemRect)}},{key:"componentDidUpdate",value:function(){L(this.areaRef,this.props.containingDivId,this.props.expandDirection,this.props.actionItemRect)}},{key:"onKeyDown",value:function(e){27===e.keyCode?(this.props.closeSubArea(),e.stopPropagation()):37!==e.keyCode&&39!==e.keyCode||e.stopPropagation()}},{key:"onFocus",value:function(e){e.stopPropagation(),e.preventDefault()}},{key:"closeSubPanel",value:function(e){this.props.closeSubArea()}},{key:"render",value:function(){var e=this,t=B(this.props.expandDirection,this.props.actionItemRect);return this.props.subPanel?d.default.createElement("div",{ref:function(t){return e.areaRef=t},style:t,className:"toolbar-popover-list subpanel",tabIndex:-1,onKeyDown:this.onKeyDown,onFocus:this.onFocus},d.default.createElement(this.props.subPanel,{closeSubPanel:this.closeSubPanel,subPanelData:this.props.subPanelData})):null}}])}(d.default.Component);function H(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,z()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function z(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(z=function(){return!!e})()}var K=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=H(this,t,[e])).state={subAreaDisplayed:!1},o.divRef=d.default.createRef(),o.actionClickHandler=o.actionClickHandler.bind(o),o.onMouseEnter=o.onMouseEnter.bind(o),o.onMouseLeave=o.onMouseLeave.bind(o),o.openSubArea=o.openSubArea.bind(o),o.closeSubArea=o.closeSubArea.bind(o),o.clickOutside=o.clickOutside.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentWillUnmount",value:function(){document.removeEventListener("click",this.clickOutside,!1)}},{key:"onMouseEnter",value:function(e){(this.props.actionObj.subMenu||this.props.actionObj.subPanel)&&this.openSubArea()}},{key:"onMouseLeave",value:function(e){(this.props.actionObj.subMenu||this.props.actionObj.subPanel)&&this.closeSubArea()}},{key:"clickOutside",value:function(e){if(this.state.subAreaDisplayed){var t=document.getElementsByClassName(this.generateActionName());(null==t?void 0:t.length)>0&&t[0].contains(e.target)||this.props.actionObj.leaveSubAreaOpenOnClickOutside||this.closeSubArea()}}},{key:"openSubArea",value:function(){this.setState({subAreaDisplayed:!0})}},{key:"closeSubArea",value:function(e){e&&!this.props.actionObj.closeSubAreaOnClick||this.setState({subAreaDisplayed:!1})}},{key:"actionClickHandler",value:function(e){this.props.actionObj.subMenu||this.props.actionObj.subPanel?this.state.subAreaDisplayed?(document.removeEventListener("click",this.clickOutside,!1),this.closeSubArea()):(document.addEventListener("click",this.clickOutside,!1),this.openSubArea()):(e.stopPropagation(),this.props.isInCascadeMenu?(this.props.closeParentSubArea(!0),this.props.setSubMenuFocus()):this.props.isInOverflowMenu?this.props.setSubMenuFocus(this.props.actionObj.action):(this.props.closeParentSubArea(!0),this.props.setToolbarFocusAction()),this.props.toolbarActionHandler(this.props.actionObj.action,e))}},{key:"generateActionName",value:function(){return this.props.actionObj.action+"-action"}},{key:"generateSubArea",value:function(){var e=this.divRef.current.getBoundingClientRect();return this.props.actionObj.subPanel?d.default.createElement(P,{subPanel:this.props.actionObj.subPanel,subPanelData:this.props.actionObj.subPanelData,closeSubArea:this.closeSubArea,actionItemRect:e,expandDirection:"horizontal",containingDivId:this.props.containingDivId}):d.default.createElement(G,{subMenuActions:this.props.actionObj.subMenu,instanceId:this.props.instanceId,toolbarActionHandler:this.props.toolbarActionHandler,setSubMenuFocus:this.props.setSubMenuFocus,closeSubArea:this.closeSubArea,actionItemRect:e,expandDirection:"horizontal",containingDivId:this.props.containingDivId,parentSelector:this.generateSelector(),isCascadeMenu:!0,size:this.props.size})}},{key:"generateSelector",value:function(){return".toolbar-sub-menu-item"}},{key:"render",value:function(){var e=this.props.actionObj,t=this.generateActionName(),n=e.kind?e.kind:"default",o=c.classNames({"toolbar-sub-menu-item":!0,"toolbar-sub-menu-jsx-item":e.jsx,"toolbar-item-selected":e.isSelected},n,t),s=this.state.subAreaDisplayed?this.generateSubArea():null;return d.default.createElement("div",{ref:this.divRef,className:o,"data-toolbar-action":e.action,onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave,onKeyDown:this.onKeyDown},d.default.createElement("div",null,d.default.createElement(w,{actionObj:e,actionName:this.generateActionName(),instanceId:this.props.instanceId,isInMenu:!0,subAreaDisplayed:this.state.subAreaDisplayed,actionClickHandler:this.actionClickHandler,buttonFocusAction:this.props.subMenuFocusAction,isFocusInToolbar:!0,size:this.props.size})),s)}}])}(d.default.Component);function U(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,Z()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function Z(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Z=function(){return!!e})()}var W=function(e){function t(){return n._classCallCheck(this,t),U(this,t,arguments)}return o._inherits(t,e),n._createClass(t,[{key:"render",value:function(){var e=this.props.isInMenu?"toolbar-divider-overflow":"toolbar-divider";return d.default.createElement("div",{className:e,tabIndex:-1,"aria-hidden":!0}," ")}}])}(d.default.Component);function q(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,V()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function V(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(V=function(){return!!e})()}var G=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=q(this,t,[e])).state={focusAction:"subarea"},o.onKeyDown=o.onKeyDown.bind(o),o.setFocusAction=o.setFocusAction.bind(o),o.setSubMenuFocus=o.setSubMenuFocus.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentDidMount",value:function(){this.props.containingDivId&&this.props.subMenuActions.length>0&&L(this.areaRef,this.props.containingDivId,this.props.expandDirection,this.props.actionItemRect),"subarea"===this.state.focusAction&&this.setFocusOnFirstItem()}},{key:"componentDidUpdate",value:function(){var e=this;if("subarea"!==this.state.focusAction){var t=this.props.subMenuActions.find((function(t){return t.action===e.state.focusAction}));if(null==t||!t.enable){var n=this.getClosestEnabledAction(this.state.focusAction);null!==n&&this.setFocusAction(n)}}}},{key:"onKeyDown",value:function(e){27===e.keyCode?(this.props.closeSubArea(),e.stopPropagation()):38===e.keyCode?(this.setFocusOnPreviousItem(),e.stopPropagation()):40===e.keyCode?(this.setFocusOnNextItem(),e.stopPropagation()):(37===e.keyCode||39===e.keyCode)&&e.stopPropagation()}},{key:"setFocusOnFirstItem",value:function(){var e=this.getFocusableActions();e.length>0&&this.setFocusAction(e[0].action)}},{key:"setFocusOnPreviousItem",value:function(){var e=this.getFocusableActions(),t=this.getPreviousFocusAction(e);t&&this.setFocusAction(t.action)}},{key:"setFocusOnNextItem",value:function(){var e=this.getFocusableActions(),t=this.getNextFocusAction(e);t&&this.setFocusAction(t.action)}},{key:"setFocusAction",value:function(e){this.setState({focusAction:e})}},{key:"setSubMenuFocus",value:function(e){var t=e||this.state.focusAction;this.setFocusAction(t)}},{key:"getClosestEnabledAction",value:function(e){for(var t=this.props.subMenuActions.findIndex((function(t){return t.action===e})),n=null,o=t+1,s=t-1;(s>-1||o<this.props.subMenuActions.length)&&null===n;)s>-1&&this.props.subMenuActions[s].enable?n=this.props.subMenuActions[s].action:s--,o<this.props.subMenuActions.length&&this.props.subMenuActions[o].enable?n=this.props.subMenuActions[o].action:o++;return n}},{key:"getFocusableActions",value:function(){for(var e=[],t=0;t<this.props.subMenuActions.length;t++)(this.props.subMenuActions[t].enable||this.props.subMenuActions[t].jsx)&&e.push(this.props.subMenuActions[t]);return e}},{key:"getPreviousFocusAction",value:function(e){var t=this,n=e.findIndex((function(e){return e.action===t.state.focusAction}));return n>0?e[n-1]:e[e.length-1]}},{key:"getNextFocusAction",value:function(e){var t=this,n=e.findIndex((function(e){return e.action===t.state.focusAction}));return n<e.length-1?e[n+1]:e[0]}},{key:"generateSubMenuItems",value:function(){for(var e=[],t=0;t<this.props.subMenuActions.length;t++){var n=this.props.subMenuActions[t];n&&e.push(this.generateSubMenuItem(n,t))}return e}},{key:"generateSubMenuItem",value:function(e,t){var n=null;return e&&(n=e.divider?d.default.createElement(W,{key:"toolbar-item-key-"+t,isInMenu:!0}):d.default.createElement(K,{key:"toolbar-item-key-"+t,actionObj:e,toolbarActionHandler:this.props.toolbarActionHandler,closeParentSubArea:this.props.closeSubArea,instanceId:this.props.instanceId,containingDivId:this.props.containingDivId,subMenuFocusAction:this.state.focusAction,setToolbarFocusAction:this.props.setToolbarFocusAction,setSubMenuFocus:this.props.setSubMenuFocus?this.props.setSubMenuFocus:this.setSubMenuFocus,size:this.props.size,isInOverflowMenu:this.props.isOverflowMenu,isInCascadeMenu:this.props.isCascadeMenu})),n}},{key:"render",value:function(){var e=this;if(this.props.subMenuActions.length>0){var t=this.props.isCascadeMenu?B(this.props.expandDirection,this.props.actionItemRect):null;return this.subMenuItems=this.generateSubMenuItems(),d.default.createElement("div",{ref:function(t){return e.areaRef=t},style:t,className:"toolbar-popover-list submenu",tabIndex:-1,onKeyDown:this.onKeyDown},this.subMenuItems)}return null}}])}(d.default.Component);function Y(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,J()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function J(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(J=function(){return!!e})()}var $=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=Y(this,t,[e])).state={subAreaDisplayed:!1},o.divRef=d.default.createRef(),o.actionClickHandler=o.actionClickHandler.bind(o),o.onKeyDown=o.onKeyDown.bind(o),o.openSubArea=o.openSubArea.bind(o),o.closeSubArea=o.closeSubArea.bind(o),o.clickOutside=o.clickOutside.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentWillUnmount",value:function(){document.removeEventListener("click",this.clickOutside,!1)}},{key:"onKeyDown",value:function(e){27!==e.keyCode||this.closeSubArea()}},{key:"getBoundingRect",value:function(){return this.divRef.current.getBoundingClientRect()}},{key:"getAction",value:function(){return this.props.actionObj.action}},{key:"isEnabled",value:function(){return this.props.actionObj.enable||this.props.actionObj.jsx}},{key:"isSubAreaDisplayed",value:function(){return this.props.actionObj.setExtIsSubAreaDisplayed&&void 0!==this.props.actionObj.extIsSubAreaDisplayed?this.props.actionObj.extIsSubAreaDisplayed:this.state.subAreaDisplayed}},{key:"clickOutside",value:function(e){if(this.isSubAreaDisplayed()){var t=document.getElementsByClassName(this.generateActionName());!!(t&&t.length>0)&&t[0].contains(e.target)||this.props.actionObj.leaveSubAreaOpenOnClickOutside||this.closeSubArea()}}},{key:"openSubArea",value:function(){this.props.actionObj.setExtIsSubAreaDisplayed?this.props.actionObj.setExtIsSubAreaDisplayed(!0):this.setState({subAreaDisplayed:!0})}},{key:"closeSubArea",value:function(e){if(!e||this.props.actionObj.closeSubAreaOnClick){if(this.props.actionObj.setExtIsSubAreaDisplayed)return void this.props.actionObj.setExtIsSubAreaDisplayed(!1);this.setState({subAreaDisplayed:!1})}}},{key:"actionClickHandler",value:function(e){this.props.actionObj.subMenu||this.props.actionObj.subPanel?this.isSubAreaDisplayed()?(document.removeEventListener("click",this.clickOutside,!1),this.closeSubArea(),this.props.setToolbarFocusAction(this.props.actionObj.action)):(document.addEventListener("click",this.clickOutside,!1),this.props.closeAnyOpenSubArea(),this.props.setToolbarFocusAction(this.props.actionObj.action),this.openSubArea()):(this.props.toolbarActionHandler(this.props.actionObj.action,e),this.props.setToolbarFocusAction(this.props.actionObj.action))}},{key:"generateActionName",value:function(){return this.props.actionObj.action+"-action"}},{key:"generateSubArea",value:function(){var e=this.divRef.current?this.divRef.current.getBoundingClientRect():null;return this.props.actionObj.subPanel?d.default.createElement(P,{subPanel:this.props.actionObj.subPanel,subPanelData:this.props.actionObj.subPanelData,closeSubArea:this.closeSubArea,setToolbarFocusAction:this.props.setToolbarFocusAction,actionItemRect:e,expandDirection:"vertical",containingDivId:this.props.containingDivId}):d.default.createElement(G,{subMenuActions:this.props.actionObj.subMenu,instanceId:this.props.instanceId,toolbarActionHandler:this.props.toolbarActionHandler,closeSubArea:this.closeSubArea,setToolbarFocusAction:this.props.setToolbarFocusAction,actionItemRect:e,expandDirection:"vertical",containingDivId:this.props.containingDivId,parentSelector:this.generateSelector(this.props.actionObj),isCascadeMenu:!1,size:this.props.size})}},{key:"generateSelector",value:function(e){return e.jsx?".toolbar-jsx-item":".toolbar-item"}},{key:"render",value:function(){var e=this.props.actionObj,t=this.generateActionName(),n=e.kind?e.kind:"default",o=c.classNames({"toolbar-item":!e.jsx,"toolbar-jsx-item":e.jsx,"toolbar-item-selected":e.isSelected},n,t,this.props.actionObj.className),s=this.isSubAreaDisplayed()?this.generateSubArea():null;return d.default.createElement("div",{ref:this.divRef,className:o,"data-toolbar-action":e.action,"data-toolbar-item":!0,onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave,onKeyDown:this.onKeyDown},d.default.createElement("div",null,d.default.createElement(w,{actionObj:e,actionName:this.generateActionName(),tooltipDirection:this.props.tooltipDirection,instanceId:this.props.instanceId,isInMenu:!1,subAreaDisplayed:this.isSubAreaDisplayed(),actionClickHandler:this.actionClickHandler,buttonFocusAction:this.isSubAreaDisplayed()?null:this.props.toolbarFocusAction,isFocusInToolbar:this.props.isFocusInToolbar,size:this.props.size})),s)}}])}(d.default.Component);function X(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,Q()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function Q(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Q=function(){return!!e})()}var ee=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=X(this,t,[e])).state={showExtendedMenu:!1},o.buttonRef=d.default.createRef(),o.uuid=f.v4(),o.toggleExtendedMenu=o.toggleExtendedMenu.bind(o),o.clickOutside=o.clickOutside.bind(o),o.closeSubArea=o.closeSubArea.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentDidUpdate",value:function(){this.props.toolbarFocusAction===this.props.action&&this.props.isFocusInToolbar&&!this.state.showExtendedMenu&&this.buttonRef.current.focus()}},{key:"componentWillUnmount",value:function(){document.removeEventListener("click",this.clickOutside,!1)}},{key:"getAction",value:function(){return this.props.action}},{key:"isSubAreaDisplayed",value:function(){return this.state.showExtendedMenu}},{key:"closeSubArea",value:function(){this.setState({showExtendedMenu:!1})}},{key:"openSubMenu",value:function(){this.setState({showExtendedMenu:!0})}},{key:"genOverflowButtonClassName",value:function(){return"toolbar-overflow-container "+this.genIndexClassName()+" "+this.genUuidClassName()}},{key:"genIndexClassName",value:function(){return"toolbar-index-"+this.props.index}},{key:"genUuidClassName",value:function(){return"toolbar-uuid-"+this.uuid}},{key:"toggleExtendedMenu",value:function(){this.state.showExtendedMenu?(document.removeEventListener("click",this.clickOutside,!1),this.props.setOverflowIndex(null),this.closeSubArea(),this.props.setToolbarFocusAction(this.props.action)):(document.addEventListener("click",this.clickOutside,!1),this.props.closeAnyOpenSubArea(),this.props.setOverflowIndex(this.props.index),this.openSubMenu(),this.props.setToolbarFocusAction(this.props.action))}},{key:"clickOutside",value:function(e){if(this.state.showExtendedMenu){var t="."+this.genIndexClassName();e.target.closest(t)||this.setState({showExtendedMenu:!1})}}},{key:"render",value:function(){var e=null;if(this.state.showExtendedMenu){var t=this.buttonRef.current.getBoundingClientRect();e=d.default.createElement(G,{ref:this.subMenuRef,subMenuActions:this.props.subMenuActions,instanceId:this.props.instanceId,toolbarActionHandler:this.props.toolbarActionHandler,closeSubArea:this.closeSubArea,setToolbarFocusAction:this.props.setToolbarFocusAction,actionItemRect:t,expandDirection:"vertical",containingDivId:this.props.containingDivId,parentSelector:".toolbar-overflow-container",isOverflowMenu:!0,isCascadeMenu:!1,size:this.props.size})}var n=this.props.toolbarFocusAction===this.props.action?0:-1;return d.default.createElement("div",{className:this.genOverflowButtonClassName(),"data-toolbar-action":this.props.action},d.default.createElement("div",{className:"toolbar-overflow-item"},d.default.createElement(a.Button,{ref:this.buttonRef,kind:"ghost",tabIndex:n,onClick:this.toggleExtendedMenu,"aria-label":this.props.label,size:this.props.size},d.default.createElement("div",{className:"toolbar-item-content default"},d.default.createElement("div",{className:"toolbar-icon"},d.default.createElement(l.OverflowMenuVertical16,null))))),e)}}])}(d.default.Component);function te(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,ne()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function ne(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(ne=function(){return!!e})()}var oe=function(e){function s(e){var t;return n._classCallCheck(this,s),(t=te(this,s,[e])).state={focusAction:"toolbar",leftOverflowIndex:null,rightOverflowIndex:null},t.isFocusInToolbar=!1,t.leftBar=[],t.rightBar=[],t.leftItemRefs=[],t.rightItemRefs=[],t.overflowItemRefs=[],t.toolbarRef=d.default.createRef(),t.onFocus=t.onFocus.bind(t),t.onBlur=t.onBlur.bind(t),t.onKeyDown=t.onKeyDown.bind(t),t.onToolbarResize=t.onToolbarResize.bind(t),t.setOverflowIndex=t.setOverflowIndex.bind(t),t.generateToolbarItems=t.generateToolbarItems.bind(t),t.setFocusAction=t.setFocusAction.bind(t),t.setFocusOnItem=t.setFocusOnItem.bind(t),t.closeAnyOpenSubArea=t.closeAnyOpenSubArea.bind(t),t}return o._inherits(s,e),n._createClass(s,[{key:"componentDidUpdate",value:function(){var e=this;-1===this.getFocusableItemRefs().findIndex((function(t){return e.getRefAction(t)===e.state.focusAction}))&&this.setFocusOnFirstItem()}},{key:"onFocus",value:function(e){var t,n;this.isFocusInToolbar=!0,null!==(t=e.target)&&void 0!==t&&null!==(n=t.classList)&&void 0!==n&&n.contains("toolbar-div")&&("toolbar"===this.state.focusAction?this.setFocusOnFirstItem():this.setFocusOnItem())}},{key:"onBlur",value:function(e){var t;null!==(t=e.relatedTarget)&&void 0!==t&&t.closest(".toolbar-div")||(this.isFocusInToolbar=!1)}},{key:"onKeyDown",value:function(e){27===e.keyCode?this.setFocusOnItem():37===e.keyCode?this.setFocusOnPreviousItem():39===e.keyCode&&this.setFocusOnNextItem()}},{key:"onScroll",value:function(e){e.currentTarget.scroll(0,0),e.preventDefault()}},{key:"onToolbarResize",value:function(){var e=this.getFocusableItemRefs(),t=this.isFocusActionFocusable(this.state.focusAction,e),n=this.getRefWithOpenSubArea();if(n){var o=n.current.getAction();this.isFocusActionFocusable(o,e)?this.setFocusAction(this.state.focusAction):n.current.closeSubArea()}t||this.setFocusOnFirstItem()}},{key:"getRefWithOpenSubArea",value:function(){var e=this.leftItemRefs.find((function(e){return e.current.isSubAreaDisplayed()}));return e||(e=this.rightItemRefs.find((function(e){return e.current.isSubAreaDisplayed()}))),e||(e=this.overflowItemRefs.find((function(e){return e.current.isSubAreaDisplayed()}))),e}},{key:"setFocusOnItem",value:function(e){var t=e||this.state.focusAction;this.getFocusableItemRefs().length>0&&this.setFocusAction(t)}},{key:"setFocusOnFirstItem",value:function(){var e=this.getFocusableItemRefs();if(e.length>0){var t=this.getRefAction(e[0]);this.setFocusAction(t)}}},{key:"setFocusOnPreviousItem",value:function(){var e=this.getFocusableItemRefs(),t=this.getPreviousItemRef(e);if(t){var n=this.getRefAction(t);this.setFocusAction(n)}}},{key:"setFocusOnNextItem",value:function(){var e=this.getFocusableItemRefs(),t=this.getNextItemRef(e);if(t){var n=this.getRefAction(t);this.setFocusAction(n)}}},{key:"setFocusAction",value:function(e){this.setState({focusAction:e})}},{key:"getPreviousItemRef",value:function(e){var t=this,n=e.findIndex((function(e){return t.getRefAction(e)===t.state.focusAction}));return 0===n?e[e.length-1]:e[n-1]}},{key:"getNextItemRef",value:function(e){var t=this,n=e.findIndex((function(e){return t.getRefAction(e)===t.state.focusAction}));return n===e.length-1?e[0]:e[n+1]}},{key:"getRefAction",value:function(e){return e.current.getAction()}},{key:"getFocusableItemRefs",value:function(){return this.getLeftBarFocusableItemRefs().concat(this.getRightBarFocusableItemRefs())}},{key:"getLeftBarFocusableItemRefs",value:function(){var e=this,t=[];if(0===this.leftItemRefs.length)return t;for(var n=this.findToolbarTopYCoordinate(),o=null,s=function(){if(e.leftItemRefs[i].current.getBoundingRect().top===n)e.leftItemRefs[i].current.isEnabled()&&t.push(e.leftItemRefs[i]);else if(!o){var s=e.getRefAction(e.leftItemRefs[i]),r=e.getOverflowAction(s);(o=e.overflowItemRefs.find((function(e){return e.current.getAction()===r})))&&t.push(o)}},i=0;i<this.leftItemRefs.length;i++)s();return t}},{key:"getRightBarFocusableItemRefs",value:function(){var e=[];if(0===this.rightItemRefs)return e;for(var t=this.findToolbarTopYCoordinate(),n=0;n<this.rightItemRefs.length;n++){if(this.rightItemRefs[n].current.isEnabled())this.rightItemRefs[n].current.getBoundingRect().top===t&&e.push(this.rightItemRefs[n])}return e.reverse()}},{key:"getOverflowAction",value:function(e){return"overflow_"+e}},{key:"setOverflowIndex",value:function(e){null===e?this.setState({leftOverflowIndex:null,rightOverflowIndex:null}):this.setState({leftOverflowIndex:e,rightOverflowIndex:this.getRightOverflowIndex()})}},{key:"getRightOverflowIndex",value:function(){var e=this,t=this.findFirstRightItemRefNotOnTopRow();return null===t?this.rightBar.length-1:this.rightBar.findIndex((function(n){return n.action===e.getRefAction(t)}))}},{key:"isFocusActionFocusable",value:function(e,t){return t.findIndex((function(t){var n;return(null===(n=t.current.props.actionObj)||void 0===n?void 0:n.action)===e}))>-1}},{key:"findFirstRightItemRefNotOnTopRow",value:function(){for(var e=this.findToolbarTopYCoordinate(),t=null,n=0;n<this.rightItemRefs.length;n++){this.rightItemRefs[n].current.getBoundingRect().top!==e&&null===t&&(t=this.rightItemRefs[n])}return t}},{key:"findToolbarTopYCoordinate",value:function(){return this.toolbarRef.current.getBoundingClientRect().top}},{key:"generateToolbarItems",value:function(e,t,n){for(var o=[],s=0;s<e.length;s++){var i=e[s];i&&(!i.divider&&t&&o.push(this.generateOverflowItem(s,i.action)),o.push(this.generateToolbarItem(i,s,n)))}return o}},{key:"generateToolbarItem",value:function(e,t,n){var o=null;if(e)if(e.divider)o=d.default.createElement(W,{key:"toolbar-item-key-"+t,isInMenu:!1});else{var s=d.default.createRef();n&&n.push(s),o=d.default.createElement($,{ref:s,key:"toolbar-item-key-"+t,actionObj:e,tooltipDirection:this.props.tooltipDirection,toolbarActionHandler:this.props.toolbarActionHandler,instanceId:this.props.instanceId,containingDivId:this.props.containingDivId,toolbarFocusAction:this.state.focusAction,setToolbarFocusAction:this.setFocusOnItem,isFocusInToolbar:this.isFocusInToolbar,closeAnyOpenSubArea:this.closeAnyOpenSubArea,size:this.props.size})}return o}},{key:"generateOverflowItem",value:function(e,t){var n=this.props.additionalText?this.props.additionalText.overflowMenuLabel:"",o=this.getOverflowAction(t),s=e===this.state.leftOverflowIndex?this.createSubMenuActions():[],i=d.default.createRef();return this.overflowItemRefs.push(i),d.default.createElement(ee,{ref:i,key:"toolbar-overflow-item-key-"+e,index:e,action:o,label:n,size:this.props.size,subMenuActions:s,setOverflowIndex:this.setOverflowIndex,toolbarActionHandler:this.props.toolbarActionHandler,instanceId:this.props.instanceId,containingDivId:this.props.containingDivId,toolbarFocusAction:this.state.focusAction,setToolbarFocusAction:this.setFocusOnItem,isFocusInToolbar:this.isFocusInToolbar,closeAnyOpenSubArea:this.closeAnyOpenSubArea})}},{key:"createSubMenuActions",value:function(){var e=this.leftBar.slice(this.state.leftOverflowIndex),t=this.rightBar.slice(this.state.rightOverflowIndex).reverse();return e.concat(t)}},{key:"closeAnyOpenSubArea",value:function(){var e=this;this.leftItemRefs.forEach((function(t){return e.closeSubAreaOnRef(t)})),this.rightItemRefs.forEach((function(t){return e.closeSubAreaOnRef(t)})),this.overflowItemRefs.forEach((function(t){return e.closeOverflowMenuOnRef(t)}))}},{key:"closeSubAreaOnRef",value:function(e){e.current.props.actionObj.setExtIsSubAreaDisplayed?e.current.props.actionObj.setExtIsSubAreaDisplayed(!1):e.current.state.subAreaDisplayed&&e.current.closeSubArea()}},{key:"closeOverflowMenuOnRef",value:function(e){e.current.state.showExtendedMenu&&e.current.closeSubArea()}},{key:"render",value:function(){this.leftBar=this.props.config.leftBar||[],this.rightBar=this.props.config.rightBar||[],this.rightBar=t._toConsumableArray(this.rightBar).reverse()||[],this.leftItemRefs=[],this.rightItemRefs=[],this.overflowItemRefs=[];var e=this.generateToolbarItems(this.leftBar,!0,this.leftItemRefs),n=this.generateToolbarItems(this.rightBar,!1,this.rightItemRefs),o="sm"===this.props.size?"toolbar-div toolbar-size-small":"toolbar-div",s="toolbar"===this.state.focusAction?0:-1;return d.default.createElement(b.default,{handleWidth:!0,onResize:this.onToolbarResize},d.default.createElement("div",{ref:this.toolbarRef,className:o,instanceid:this.props.instanceId,tabIndex:s,onFocus:this.onFocus,onBlur:this.onBlur,onKeyDown:this.onKeyDown},d.default.createElement("div",{className:"toolbar-left-bar",onScroll:this.onScroll},e),d.default.createElement("div",{className:"toolbar-right-bar"},n)))}}])}(d.default.Component);exports.Toolbar=oe,exports.toInteger_1=x,exports.toNumber_1=D;
2
- //# sourceMappingURL=toolbar-235dfb9d.js.map
1
+ "use strict";var e=require("./isArrayLikeObject-04f333a5.js"),t=require("./datarecord-metadata-v3-schema-d279dbb0.js"),n=require("./createClass-155bf7da.js"),o=require("./inherits-75817f22.js"),s=require("react"),i=require("react-resize-detector"),r=require("./lib/tooltip.js"),a=require("carbon-components-react"),c=require("react-inlinesvg"),u=require("./_baseIteratee-2b75d27c.js"),l=require("@carbon/icons-react"),p=require("./canvas-constants-8d240dc6.js"),f=require("uuid");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var d=h(s),b=h(i),v=h(c),A=/\s/;var m=function(e){for(var t=e.length;t--&&A.test(e.charAt(t)););return t},O=/^\s+/;var g=function(e){return e?e.slice(0,m(e)+1).replace(O,""):e},y=e.isObject_1,C=e.isSymbol_1,I=/^[-+]0x[0-9a-f]+$/i,R=/^0b[01]+$/i,E=/^0o[0-7]+$/i,k=parseInt;var D=function(e){if("number"==typeof e)return e;if(C(e))return NaN;if(y(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=y(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=g(e);var n=R.test(e);return n||E.test(e)?k(e.slice(2),n?2:8):I.test(e)?NaN:+e},F=D,S=1/0;var M=function(e){return e?(e=F(e))===S||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0};var x=function(e){var t=M(e),n=t%1;return t==t?n?t-n:t:0};function T(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,_()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function _(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(_=function(){return!!e})()}var w=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=T(this,t,[e])).buttonRef=d.default.createRef(),o}return o._inherits(t,e),n._createClass(t,[{key:"componentDidUpdate",value:function(){if(this.props.isFocusInToolbar&&this.props.buttonFocusAction===this.props.actionObj.action){var e=this.buttonRef.current.querySelector(".toolbar-jsx-obj");if(e)return void e.focus();this.buttonRef.current.focus()}}},{key:"getDefaultIcon",value:function(e){var t=!e.enable;switch(e.action){case p.TOOLBAR_STOP:return d.default.createElement(l.StopFilledAlt16,{disabled:t});case p.TOOLBAR_RUN:return d.default.createElement(l.Play16,{disabled:t});case p.TOOLBAR_EXPAND_SUPERNODE_IN_PLACE:return d.default.createElement(l.Maximize16,{disabled:t});case p.TOOLBAR_COLLAPSE_SUPERNODE_IN_PLACE:return d.default.createElement(l.Minimize16,{disabled:t});case p.TOOLBAR_EXPAND_SUPERNODE_FULL_PAGE:return d.default.createElement(l.Launch16,{disabled:t});case p.TOOLBAR_UNDO:return d.default.createElement(l.Undo16,{disabled:t});case p.TOOLBAR_REDO:return d.default.createElement(l.Redo16,{disabled:t});case p.TOOLBAR_CLIPBOARD:return d.default.createElement(l.Result16,{disabled:t});case p.TOOLBAR_CUT:return d.default.createElement(l.Cut16,{disabled:t});case p.TOOLBAR_COPY:return d.default.createElement(l.Copy16,{disabled:t});case p.TOOLBAR_PASTE:return d.default.createElement(l.Paste16,{disabled:t});case p.TOOLBAR_CREATE_COMMENT:case p.TOOLBAR_CREATE_AUTO_COMMENT:return d.default.createElement(l.AddComment16,{disabled:t});case p.TOOLBAR_SHOW_COMMENTS:return d.default.createElement(l.Chat16,{disabled:t});case p.TOOLBAR_HIDE_COMMENTS:return d.default.createElement(l.ChatOff16,{disabled:t});case p.TOOLBAR_COLOR_BACKGROUND:return d.default.createElement(l.ColorPalette16,{disabled:t});case p.TOOLBAR_DELETE_LINK:case p.TOOLBAR_DELETE_SELECTED_OBJECTS:return d.default.createElement(l.TrashCan16,{disabled:t});case p.TOOLBAR_SET_COMMENT_EDIT_MODE:case p.TOOLBAR_SET_NODE_LABEL_EDIT:return d.default.createElement(l.Edit16,{disabled:t});case p.TOOLBAR_ZOOM_IN:return d.default.createElement(l.ZoomIn16,{disabled:t});case p.TOOLBAR_ZOOM_OUT:return d.default.createElement(l.ZoomOut16,{disabled:t});case p.TOOLBAR_ZOOM_FIT:return d.default.createElement(l.CenterToFit16,{disabled:t});case p.TOOLBAR_OPEN_PALETTE:case p.TOOLBAR_CLOSE_PALETTE:case p.TOOLBAR_TOGGLE_PALETTE:return d.default.createElement(l.OpenPanelFilledLeft16,{disabled:t});case p.TOOLBAR_ARRANGE_HORIZONALLY:return d.default.createElement(v.default,{src:"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Crect%20x%3D%221.5%22%20y%3D%222%22%20width%3D%2213%22%20height%3D%221%22%2F%3E%3Crect%20x%3D%221.5%22%20y%3D%2213%22%20width%3D%2213%22%20height%3D%221%22%2F%3E%3Cpath%20d%3D%22M7%2C10.5H2a.47.47%2C0%2C0%2C1-.5-.5V6A.47.47%2C0%2C0%2C1%2C2%2C5.5H7a.47.47%2C0%2C0%2C1%2C.5.5v4A.47.47%2C0%2C0%2C1%2C7%2C10.5Zm-4.5-1h4v-3h-4Z%22%2F%3E%3Cpath%20d%3D%22M14%2C10.5H9a.47.47%2C0%2C0%2C1-.5-.5V6A.47.47%2C0%2C0%2C1%2C9%2C5.5h5a.47.47%2C0%2C0%2C1%2C.5.5v4A.47.47%2C0%2C0%2C1%2C14%2C10.5Zm-4.5-1h4v-3h-4Z%22%2F%3E%3C%2Fsvg%3E",disabled:t});case p.TOOLBAR_ARRANGE_VERTICALLY:return d.default.createElement(v.default,{src:"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Crect%20x%3D%222%22%20y%3D%221.5%22%20width%3D%221%22%20height%3D%2213%22%2F%3E%3Crect%20x%3D%2213%22%20y%3D%221.5%22%20width%3D%221%22%20height%3D%2213%22%2F%3E%3Cpath%20d%3D%22M10.5%2C7.5h-5A.47.47%2C0%2C0%2C1%2C5%2C7V3a.47.47%2C0%2C0%2C1%2C.5-.5h5A.47.47%2C0%2C0%2C1%2C11%2C3V7A.47.47%2C0%2C0%2C1%2C10.5%2C7.5ZM6%2C6.5h4v-3H6Z%22%2F%3E%3Cpath%20d%3D%22M10.5%2C13.5h-5A.47.47%2C0%2C0%2C1%2C5%2C13V9a.47.47%2C0%2C0%2C1%2C.5-.5h5A.47.47%2C0%2C0%2C1%2C11%2C9v4A.47.47%2C0%2C0%2C1%2C10.5%2C13.5ZM6%2C12.5h4v-3H6Z%22%2F%3E%3C%2Fsvg%3E",disabled:t});case p.TOOLBAR_TOGGLE_NOTIFICATION_PANEL:return d.default.createElement(v.default,{src:"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%20fill%3D%22currentColor%22%3E%20%3Cpath%20d%3D%22M27%2C12V27H5V5H20V3H5A2%2C2%2C0%2C0%2C0%2C3%2C5V27a2%2C2%2C0%2C0%2C0%2C2%2C2H27a2%2C2%2C0%2C0%2C0%2C2-2V12Z%22%2F%3E%20%3Ccircle%20class%3D%22dot%22%20cx%3D%2226.5%22%20cy%3D%225.5%22%20r%3D%223.5%22%2F%3E%3C%2Fsvg%3E",disabled:t});default:return null}}},{key:"generateLabel",value:function(e,t,n,o){var s="toolbar-icon-label";return s+=this.generateLabelType(n,o),s+=t?" disabled":"",d.default.createElement("div",{className:s},e)}},{key:"generateLabelType",value:function(e,t){return e?" overflow":"before"===t?" before":"after"===t?" after":""}},{key:"generateIcon",value:function(e){var t=this.getDefaultIcon(e);if(e.iconEnabled){var n=e.iconEnabled,o=e.iconDisabled||e.iconEnabled,s=e.enable?n:o,i="toolbar-icon-"+this.props.instanceId+" -"+e.action;t="string"==typeof s?d.default.createElement(v.default,{id:i,src:s,disabled:!e.enable}):s}return t?d.default.createElement("div",{className:"toolbar-icon"},t):null}},{key:"generateRegularItem",value:function(e){var t=null,n=null;this.props.isInMenu?n=this.generateLabel(e.label,!e.enable,!0):"before"===e.incLabelWithIcon?t=this.generateLabel(e.label,!e.enable,!1,e.incLabelWithIcon):"after"===e.incLabelWithIcon&&(n=this.generateLabel(e.label,!e.enable,!1,e.incLabelWithIcon));var o=this.generateIcon(e),s=e.textContent?d.default.createElement("div",{className:"toolbar-text-content"}," ",e.textContent," "):null,i=u.classNames("toolbar-item-content",{overflow:this.props.isInMenu,disabled:!e.enable,default:!e.kind}),r=e.kind||"ghost",c=this.generateChevronIcon(e),l=d.default.createElement("div",{className:i},t,o,n,s,c);l=this.wrapInTooltip(l);var p=e.incLabelWithIcon?null:e.label,f=this.props.buttonFocusAction===e.action?0:-1;return d.default.createElement(a.Button,{kind:r,ref:this.buttonRef,onClick:this.props.actionClickHandler,disabled:!e.enable,"aria-label":p,size:this.props.size,tabIndex:f},l)}},{key:"generateChevronIcon",value:function(e){if(e.subMenu||e.subPanel){if(this.props.isInMenu)return d.default.createElement(l.ChevronRight16,null);if("before"===e.incLabelWithIcon||"after"===e.incLabelWithIcon){var t=this.props.subAreaDisplayed?d.default.createElement(l.ChevronUp16,null):d.default.createElement(l.ChevronDown16,null);return d.default.createElement("div",{className:"toolbar-up-down-chevron"},t)}return this.generateChevronMini()}return null}},{key:"generateChevronMini",value:function(){var e="sm"===this.props.size?"M 29 29 L 29 23 23 29 Z":"M 37 37 L 37 30 30 37 Z";return d.default.createElement("svg",{className:"toolbar-tick-svg"},d.default.createElement("path",{d:e,className:"toolbar-tick-mark"}))}},{key:"generateJsxItem",value:function(e){var t=null;if("function"==typeof e.jsx){var n=this.props.buttonFocusAction===e.action?0:-1;t=e.jsx(n)}else t=e.jsx;var o=this.wrapInTooltip(t);return d.default.createElement("div",{ref:this.buttonRef},o)}},{key:"wrapInTooltip",value:function(e){if(!this.props.isInMenu&&(this.showLabelAsTip(this.props.actionObj)||this.props.actionObj.tooltip)){var t=this.props.actionObj.tooltip?this.props.actionObj.tooltip:this.props.actionObj.label,n=this.props.actionName+"-"+this.props.instanceId+"-tooltip",o=this.props.actionObj.enable||this.props.actionObj.jsx,s=this.props.tooltipDirection?this.props.tooltipDirection:"bottom";return d.default.createElement(r,{id:n,tip:t,disable:!o,className:"icon-tooltip",direction:s},e)}return e}},{key:"showLabelAsTip",value:function(e){return!!e.label&&("before"!==e.incLabelWithIcon&&"after"!==e.incLabelWithIcon)}},{key:"render",value:function(){var e=this.props.actionObj;return e.jsx?this.generateJsxItem(e):this.generateRegularItem(e)}}])}(d.default.Component);function L(e,t,n,o){if(e&&o&&t){var s=document.getElementById(t),i=s?s.getBoundingClientRect():{top:-1e3,bottom:1e3,left:-1e3,right:1e3},r=e.getBoundingClientRect(),a=r.bottom-i.bottom,c=r.right-i.right;if("vertical"===n){if(a>0){var u=o.top-i.top>r.height?o.top-r.height:o.bottom-a;e.style.top=u+"px"}if(c>0){var l=o.left-c;e.style.left=l+"px"}}else{if(a>0){var p=r.top-a-2;e.style.top=p+"px"}if(c>0){var f=o.left-r.width;e.style.left=f+"px"}}}}function B(e,t){return t?"vertical"===e?{top:t.bottom+1,left:t.left}:{top:t.top-1,left:t.left+t.width}:null}function j(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,N()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function N(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(N=function(){return!!e})()}var P=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=j(this,t,[e])).onKeyDown=o.onKeyDown.bind(o),o.closeSubPanel=o.closeSubPanel.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentDidMount",value:function(){L(this.areaRef,this.props.containingDivId,this.props.expandDirection,this.props.actionItemRect)}},{key:"componentDidUpdate",value:function(){L(this.areaRef,this.props.containingDivId,this.props.expandDirection,this.props.actionItemRect)}},{key:"onKeyDown",value:function(e){27===e.keyCode?(this.props.closeSubArea(),e.stopPropagation()):37!==e.keyCode&&39!==e.keyCode||e.stopPropagation()}},{key:"onFocus",value:function(e){e.stopPropagation(),e.preventDefault()}},{key:"closeSubPanel",value:function(e){this.props.closeSubArea()}},{key:"render",value:function(){var e=this,t=B(this.props.expandDirection,this.props.actionItemRect);return this.props.subPanel?d.default.createElement("div",{ref:function(t){return e.areaRef=t},style:t,className:"toolbar-popover-list subpanel",tabIndex:-1,onKeyDown:this.onKeyDown,onFocus:this.onFocus},d.default.createElement(this.props.subPanel,{closeSubPanel:this.closeSubPanel,subPanelData:this.props.subPanelData})):null}}])}(d.default.Component);function H(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,z()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function z(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(z=function(){return!!e})()}var K=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=H(this,t,[e])).state={subAreaDisplayed:!1},o.divRef=d.default.createRef(),o.actionClickHandler=o.actionClickHandler.bind(o),o.onMouseEnter=o.onMouseEnter.bind(o),o.onMouseLeave=o.onMouseLeave.bind(o),o.openSubArea=o.openSubArea.bind(o),o.closeSubArea=o.closeSubArea.bind(o),o.clickOutside=o.clickOutside.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentWillUnmount",value:function(){document.removeEventListener("click",this.clickOutside,!1)}},{key:"onMouseEnter",value:function(e){(this.props.actionObj.subMenu||this.props.actionObj.subPanel)&&this.openSubArea()}},{key:"onMouseLeave",value:function(e){(this.props.actionObj.subMenu||this.props.actionObj.subPanel)&&this.closeSubArea()}},{key:"clickOutside",value:function(e){if(this.state.subAreaDisplayed){var t=document.getElementsByClassName(this.generateActionName());(null==t?void 0:t.length)>0&&t[0].contains(e.target)||this.props.actionObj.leaveSubAreaOpenOnClickOutside||this.closeSubArea()}}},{key:"openSubArea",value:function(){this.setState({subAreaDisplayed:!0})}},{key:"closeSubArea",value:function(e){e&&!this.props.actionObj.closeSubAreaOnClick||this.setState({subAreaDisplayed:!1})}},{key:"actionClickHandler",value:function(e){this.props.actionObj.subMenu||this.props.actionObj.subPanel?this.state.subAreaDisplayed?(document.removeEventListener("click",this.clickOutside,!1),this.closeSubArea()):(document.addEventListener("click",this.clickOutside,!1),this.openSubArea()):(e.stopPropagation(),this.props.isInCascadeMenu?(this.props.closeParentSubArea(!0),this.props.setSubMenuFocus()):this.props.isInOverflowMenu?this.props.setSubMenuFocus(this.props.actionObj.action):(this.props.closeParentSubArea(!0),this.props.setToolbarFocusAction()),this.props.toolbarActionHandler(this.props.actionObj.action,e))}},{key:"generateActionName",value:function(){return this.props.actionObj.action+"-action"}},{key:"generateSubArea",value:function(){var e=this.divRef.current.getBoundingClientRect();return this.props.actionObj.subPanel?d.default.createElement(P,{subPanel:this.props.actionObj.subPanel,subPanelData:this.props.actionObj.subPanelData,closeSubArea:this.closeSubArea,actionItemRect:e,expandDirection:"horizontal",containingDivId:this.props.containingDivId}):d.default.createElement(G,{subMenuActions:this.props.actionObj.subMenu,instanceId:this.props.instanceId,toolbarActionHandler:this.props.toolbarActionHandler,setSubMenuFocus:this.props.setSubMenuFocus,closeSubArea:this.closeSubArea,actionItemRect:e,expandDirection:"horizontal",containingDivId:this.props.containingDivId,parentSelector:this.generateSelector(),isCascadeMenu:!0,size:this.props.size})}},{key:"generateSelector",value:function(){return".toolbar-sub-menu-item"}},{key:"render",value:function(){var e=this.props.actionObj,t=this.generateActionName(),n=e.kind?e.kind:"default",o=u.classNames({"toolbar-sub-menu-item":!0,"toolbar-sub-menu-jsx-item":e.jsx,"toolbar-item-selected":e.isSelected},n,t),s=this.state.subAreaDisplayed?this.generateSubArea():null;return d.default.createElement("div",{ref:this.divRef,className:o,"data-toolbar-action":e.action,onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave,onKeyDown:this.onKeyDown},d.default.createElement("div",null,d.default.createElement(w,{actionObj:e,actionName:this.generateActionName(),instanceId:this.props.instanceId,isInMenu:!0,subAreaDisplayed:this.state.subAreaDisplayed,actionClickHandler:this.actionClickHandler,buttonFocusAction:this.props.subMenuFocusAction,isFocusInToolbar:!0,size:this.props.size})),s)}}])}(d.default.Component);function U(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,Z()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function Z(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Z=function(){return!!e})()}var W=function(e){function t(){return n._classCallCheck(this,t),U(this,t,arguments)}return o._inherits(t,e),n._createClass(t,[{key:"render",value:function(){var e=this.props.isInMenu?"toolbar-divider-overflow":"toolbar-divider";return d.default.createElement("div",{className:e,tabIndex:-1,"aria-hidden":!0}," ")}}])}(d.default.Component);function q(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,V()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function V(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(V=function(){return!!e})()}var G=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=q(this,t,[e])).state={focusAction:"subarea"},o.onKeyDown=o.onKeyDown.bind(o),o.setFocusAction=o.setFocusAction.bind(o),o.setSubMenuFocus=o.setSubMenuFocus.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentDidMount",value:function(){this.props.containingDivId&&this.props.subMenuActions.length>0&&L(this.areaRef,this.props.containingDivId,this.props.expandDirection,this.props.actionItemRect),"subarea"===this.state.focusAction&&this.setFocusOnFirstItem()}},{key:"componentDidUpdate",value:function(){var e=this;if("subarea"!==this.state.focusAction){var t=this.props.subMenuActions.find((function(t){return t.action===e.state.focusAction}));if(null==t||!t.enable){var n=this.getClosestEnabledAction(this.state.focusAction);null!==n&&this.setFocusAction(n)}}}},{key:"onKeyDown",value:function(e){27===e.keyCode?(this.props.closeSubArea(),e.stopPropagation()):38===e.keyCode?(this.setFocusOnPreviousItem(),e.stopPropagation()):40===e.keyCode?(this.setFocusOnNextItem(),e.stopPropagation()):(37===e.keyCode||39===e.keyCode)&&e.stopPropagation()}},{key:"setFocusOnFirstItem",value:function(){var e=this.getFocusableActions();e.length>0&&this.setFocusAction(e[0].action)}},{key:"setFocusOnPreviousItem",value:function(){var e=this.getFocusableActions(),t=this.getPreviousFocusAction(e);t&&this.setFocusAction(t.action)}},{key:"setFocusOnNextItem",value:function(){var e=this.getFocusableActions(),t=this.getNextFocusAction(e);t&&this.setFocusAction(t.action)}},{key:"setFocusAction",value:function(e){this.setState({focusAction:e})}},{key:"setSubMenuFocus",value:function(e){var t=e||this.state.focusAction;this.setFocusAction(t)}},{key:"getClosestEnabledAction",value:function(e){for(var t=this.props.subMenuActions.findIndex((function(t){return t.action===e})),n=null,o=t+1,s=t-1;(s>-1||o<this.props.subMenuActions.length)&&null===n;)s>-1&&this.props.subMenuActions[s].enable?n=this.props.subMenuActions[s].action:s--,o<this.props.subMenuActions.length&&this.props.subMenuActions[o].enable?n=this.props.subMenuActions[o].action:o++;return n}},{key:"getFocusableActions",value:function(){for(var e=[],t=0;t<this.props.subMenuActions.length;t++)(this.props.subMenuActions[t].enable||this.props.subMenuActions[t].jsx)&&e.push(this.props.subMenuActions[t]);return e}},{key:"getPreviousFocusAction",value:function(e){var t=this,n=e.findIndex((function(e){return e.action===t.state.focusAction}));return n>0?e[n-1]:e[e.length-1]}},{key:"getNextFocusAction",value:function(e){var t=this,n=e.findIndex((function(e){return e.action===t.state.focusAction}));return n<e.length-1?e[n+1]:e[0]}},{key:"generateSubMenuItems",value:function(){for(var e=[],t=0;t<this.props.subMenuActions.length;t++){var n=this.props.subMenuActions[t];n&&e.push(this.generateSubMenuItem(n,t))}return e}},{key:"generateSubMenuItem",value:function(e,t){var n=null;return e&&(n=e.divider?d.default.createElement(W,{key:"toolbar-item-key-"+t,isInMenu:!0}):d.default.createElement(K,{key:"toolbar-item-key-"+t,actionObj:e,toolbarActionHandler:this.props.toolbarActionHandler,closeParentSubArea:this.props.closeSubArea,instanceId:this.props.instanceId,containingDivId:this.props.containingDivId,subMenuFocusAction:this.state.focusAction,setToolbarFocusAction:this.props.setToolbarFocusAction,setSubMenuFocus:this.props.setSubMenuFocus?this.props.setSubMenuFocus:this.setSubMenuFocus,size:this.props.size,isInOverflowMenu:this.props.isOverflowMenu,isInCascadeMenu:this.props.isCascadeMenu})),n}},{key:"render",value:function(){var e=this;if(this.props.subMenuActions.length>0){var t=this.props.isCascadeMenu?B(this.props.expandDirection,this.props.actionItemRect):null;return this.subMenuItems=this.generateSubMenuItems(),d.default.createElement("div",{ref:function(t){return e.areaRef=t},style:t,className:"toolbar-popover-list submenu",tabIndex:-1,onKeyDown:this.onKeyDown},this.subMenuItems)}return null}}])}(d.default.Component);function Y(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,J()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function J(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(J=function(){return!!e})()}var $=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=Y(this,t,[e])).state={subAreaDisplayed:!1},o.divRef=d.default.createRef(),o.actionClickHandler=o.actionClickHandler.bind(o),o.onKeyDown=o.onKeyDown.bind(o),o.openSubArea=o.openSubArea.bind(o),o.closeSubArea=o.closeSubArea.bind(o),o.clickOutside=o.clickOutside.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentWillUnmount",value:function(){document.removeEventListener("click",this.clickOutside,!1)}},{key:"onKeyDown",value:function(e){27!==e.keyCode||this.closeSubArea()}},{key:"getBoundingRect",value:function(){return this.divRef.current.getBoundingClientRect()}},{key:"getAction",value:function(){return this.props.actionObj.action}},{key:"isEnabled",value:function(){return this.props.actionObj.enable||this.props.actionObj.jsx}},{key:"isSubAreaDisplayed",value:function(){return this.props.actionObj.setExtIsSubAreaDisplayed&&void 0!==this.props.actionObj.extIsSubAreaDisplayed?this.props.actionObj.extIsSubAreaDisplayed:this.state.subAreaDisplayed}},{key:"clickOutside",value:function(e){if(this.isSubAreaDisplayed()){var t=document.getElementsByClassName(this.generateActionName());!!(t&&t.length>0)&&t[0].contains(e.target)||this.props.actionObj.leaveSubAreaOpenOnClickOutside||this.closeSubArea()}}},{key:"openSubArea",value:function(){this.props.actionObj.setExtIsSubAreaDisplayed?this.props.actionObj.setExtIsSubAreaDisplayed(!0):this.setState({subAreaDisplayed:!0})}},{key:"closeSubArea",value:function(e){if(!e||this.props.actionObj.closeSubAreaOnClick){if(this.props.actionObj.setExtIsSubAreaDisplayed)return void this.props.actionObj.setExtIsSubAreaDisplayed(!1);this.setState({subAreaDisplayed:!1})}}},{key:"actionClickHandler",value:function(e){this.props.actionObj.subMenu||this.props.actionObj.subPanel?this.isSubAreaDisplayed()?(document.removeEventListener("click",this.clickOutside,!1),this.closeSubArea(),this.props.setToolbarFocusAction(this.props.actionObj.action)):(document.addEventListener("click",this.clickOutside,!1),this.props.closeAnyOpenSubArea(),this.props.setToolbarFocusAction(this.props.actionObj.action),this.openSubArea()):(this.props.toolbarActionHandler(this.props.actionObj.action,e),this.props.setToolbarFocusAction(this.props.actionObj.action))}},{key:"generateActionName",value:function(){return this.props.actionObj.action+"-action"}},{key:"generateSubArea",value:function(){var e=this.divRef.current?this.divRef.current.getBoundingClientRect():null;return this.props.actionObj.subPanel?d.default.createElement(P,{subPanel:this.props.actionObj.subPanel,subPanelData:this.props.actionObj.subPanelData,closeSubArea:this.closeSubArea,setToolbarFocusAction:this.props.setToolbarFocusAction,actionItemRect:e,expandDirection:"vertical",containingDivId:this.props.containingDivId}):d.default.createElement(G,{subMenuActions:this.props.actionObj.subMenu,instanceId:this.props.instanceId,toolbarActionHandler:this.props.toolbarActionHandler,closeSubArea:this.closeSubArea,setToolbarFocusAction:this.props.setToolbarFocusAction,actionItemRect:e,expandDirection:"vertical",containingDivId:this.props.containingDivId,parentSelector:this.generateSelector(this.props.actionObj),isCascadeMenu:!1,size:this.props.size})}},{key:"generateSelector",value:function(e){return e.jsx?".toolbar-jsx-item":".toolbar-item"}},{key:"render",value:function(){var e=this.props.actionObj,t=this.generateActionName(),n=e.kind?e.kind:"default",o=u.classNames({"toolbar-item":!e.jsx,"toolbar-jsx-item":e.jsx,"toolbar-item-selected":e.isSelected},n,t,this.props.actionObj.className),s=this.isSubAreaDisplayed()?this.generateSubArea():null;return d.default.createElement("div",{ref:this.divRef,className:o,"data-toolbar-action":e.action,"data-toolbar-item":!0,onMouseEnter:this.onMouseEnter,onMouseLeave:this.onMouseLeave,onKeyDown:this.onKeyDown},d.default.createElement("div",null,d.default.createElement(w,{actionObj:e,actionName:this.generateActionName(),tooltipDirection:this.props.tooltipDirection,instanceId:this.props.instanceId,isInMenu:!1,subAreaDisplayed:this.isSubAreaDisplayed(),actionClickHandler:this.actionClickHandler,buttonFocusAction:this.isSubAreaDisplayed()?null:this.props.toolbarFocusAction,isFocusInToolbar:this.props.isFocusInToolbar,size:this.props.size})),s)}}])}(d.default.Component);function X(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,Q()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function Q(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(Q=function(){return!!e})()}var ee=function(e){function t(e){var o;return n._classCallCheck(this,t),(o=X(this,t,[e])).state={showExtendedMenu:!1},o.buttonRef=d.default.createRef(),o.uuid=f.v4(),o.toggleExtendedMenu=o.toggleExtendedMenu.bind(o),o.clickOutside=o.clickOutside.bind(o),o.closeSubArea=o.closeSubArea.bind(o),o}return o._inherits(t,e),n._createClass(t,[{key:"componentDidUpdate",value:function(){this.props.toolbarFocusAction===this.props.action&&this.props.isFocusInToolbar&&!this.state.showExtendedMenu&&this.buttonRef.current.focus()}},{key:"componentWillUnmount",value:function(){document.removeEventListener("click",this.clickOutside,!1)}},{key:"getAction",value:function(){return this.props.action}},{key:"isSubAreaDisplayed",value:function(){return this.state.showExtendedMenu}},{key:"closeSubArea",value:function(){this.setState({showExtendedMenu:!1})}},{key:"openSubMenu",value:function(){this.setState({showExtendedMenu:!0})}},{key:"genOverflowButtonClassName",value:function(){return"toolbar-overflow-container "+this.genIndexClassName()+" "+this.genUuidClassName()}},{key:"genIndexClassName",value:function(){return"toolbar-index-"+this.props.index}},{key:"genUuidClassName",value:function(){return"toolbar-uuid-"+this.uuid}},{key:"toggleExtendedMenu",value:function(){this.state.showExtendedMenu?(document.removeEventListener("click",this.clickOutside,!1),this.props.setOverflowIndex(null),this.closeSubArea(),this.props.setToolbarFocusAction(this.props.action)):(document.addEventListener("click",this.clickOutside,!1),this.props.closeAnyOpenSubArea(),this.props.setOverflowIndex(this.props.index),this.openSubMenu(),this.props.setToolbarFocusAction(this.props.action))}},{key:"clickOutside",value:function(e){if(this.state.showExtendedMenu){var t="."+this.genIndexClassName();e.target.closest(t)||this.setState({showExtendedMenu:!1})}}},{key:"render",value:function(){var e=null;if(this.state.showExtendedMenu){var t=this.buttonRef.current.getBoundingClientRect();e=d.default.createElement(G,{ref:this.subMenuRef,subMenuActions:this.props.subMenuActions,instanceId:this.props.instanceId,toolbarActionHandler:this.props.toolbarActionHandler,closeSubArea:this.closeSubArea,setToolbarFocusAction:this.props.setToolbarFocusAction,actionItemRect:t,expandDirection:"vertical",containingDivId:this.props.containingDivId,parentSelector:".toolbar-overflow-container",isOverflowMenu:!0,isCascadeMenu:!1,size:this.props.size})}var n=this.props.toolbarFocusAction===this.props.action?0:-1;return d.default.createElement("div",{className:this.genOverflowButtonClassName(),"data-toolbar-action":this.props.action},d.default.createElement("div",{className:"toolbar-overflow-item"},d.default.createElement(a.Button,{ref:this.buttonRef,kind:"ghost",tabIndex:n,onClick:this.toggleExtendedMenu,"aria-label":this.props.label,size:this.props.size},d.default.createElement("div",{className:"toolbar-item-content default"},d.default.createElement("div",{className:"toolbar-icon"},d.default.createElement(l.OverflowMenuVertical16,null))))),e)}}])}(d.default.Component);function te(e,t,n){return t=o._getPrototypeOf(t),o._possibleConstructorReturn(e,ne()?Reflect.construct(t,n||[],o._getPrototypeOf(e).constructor):t.apply(e,n))}function ne(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(ne=function(){return!!e})()}var oe=function(e){function s(e){var t;return n._classCallCheck(this,s),(t=te(this,s,[e])).state={focusAction:"toolbar",leftOverflowIndex:null,rightOverflowIndex:null},t.isFocusInToolbar=!1,t.leftBar=[],t.rightBar=[],t.leftItemRefs=[],t.rightItemRefs=[],t.overflowItemRefs=[],t.toolbarRef=d.default.createRef(),t.onFocus=t.onFocus.bind(t),t.onBlur=t.onBlur.bind(t),t.onKeyDown=t.onKeyDown.bind(t),t.onToolbarResize=t.onToolbarResize.bind(t),t.setOverflowIndex=t.setOverflowIndex.bind(t),t.generateToolbarItems=t.generateToolbarItems.bind(t),t.setFocusAction=t.setFocusAction.bind(t),t.setFocusOnItem=t.setFocusOnItem.bind(t),t.closeAnyOpenSubArea=t.closeAnyOpenSubArea.bind(t),t}return o._inherits(s,e),n._createClass(s,[{key:"componentDidUpdate",value:function(){var e=this;-1===this.getFocusableItemRefs().findIndex((function(t){return e.getRefAction(t)===e.state.focusAction}))&&this.setFocusOnFirstItem()}},{key:"onFocus",value:function(e){var t,n;this.isFocusInToolbar=!0,null!==(t=e.target)&&void 0!==t&&null!==(n=t.classList)&&void 0!==n&&n.contains("toolbar-div")&&("toolbar"===this.state.focusAction?this.setFocusOnFirstItem():this.setFocusOnItem())}},{key:"onBlur",value:function(e){var t;null!==(t=e.relatedTarget)&&void 0!==t&&t.closest(".toolbar-div")||(this.isFocusInToolbar=!1)}},{key:"onKeyDown",value:function(e){27===e.keyCode?this.setFocusOnItem():37===e.keyCode?this.setFocusOnPreviousItem():39===e.keyCode&&this.setFocusOnNextItem()}},{key:"onScroll",value:function(e){e.currentTarget.scroll(0,0),e.preventDefault()}},{key:"onToolbarResize",value:function(){var e=this.getFocusableItemRefs(),t=this.isFocusActionFocusable(this.state.focusAction,e),n=this.getRefWithOpenSubArea();if(n){var o=n.current.getAction();this.isFocusActionFocusable(o,e)?this.setFocusAction(this.state.focusAction):n.current.closeSubArea()}t||this.setFocusOnFirstItem()}},{key:"getRefWithOpenSubArea",value:function(){var e=this.leftItemRefs.find((function(e){return e.current.isSubAreaDisplayed()}));return e||(e=this.rightItemRefs.find((function(e){return e.current.isSubAreaDisplayed()}))),e||(e=this.overflowItemRefs.find((function(e){return e.current.isSubAreaDisplayed()}))),e}},{key:"setFocusOnItem",value:function(e){var t=e||this.state.focusAction;this.getFocusableItemRefs().length>0&&this.setFocusAction(t)}},{key:"setFocusOnFirstItem",value:function(){var e=this.getFocusableItemRefs();if(e.length>0){var t=this.getRefAction(e[0]);this.setFocusAction(t)}}},{key:"setFocusOnPreviousItem",value:function(){var e=this.getFocusableItemRefs(),t=this.getPreviousItemRef(e);if(t){var n=this.getRefAction(t);this.setFocusAction(n)}}},{key:"setFocusOnNextItem",value:function(){var e=this.getFocusableItemRefs(),t=this.getNextItemRef(e);if(t){var n=this.getRefAction(t);this.setFocusAction(n)}}},{key:"setFocusAction",value:function(e){this.setState({focusAction:e})}},{key:"getPreviousItemRef",value:function(e){var t=this,n=e.findIndex((function(e){return t.getRefAction(e)===t.state.focusAction}));return 0===n?e[e.length-1]:e[n-1]}},{key:"getNextItemRef",value:function(e){var t=this,n=e.findIndex((function(e){return t.getRefAction(e)===t.state.focusAction}));return n===e.length-1?e[0]:e[n+1]}},{key:"getRefAction",value:function(e){return e.current.getAction()}},{key:"getFocusableItemRefs",value:function(){return this.getLeftBarFocusableItemRefs().concat(this.getRightBarFocusableItemRefs())}},{key:"getLeftBarFocusableItemRefs",value:function(){var e=this,t=[];if(0===this.leftItemRefs.length)return t;for(var n=this.findToolbarTopYCoordinate(),o=null,s=function(){if(e.leftItemRefs[i].current.getBoundingRect().top===n)e.leftItemRefs[i].current.isEnabled()&&t.push(e.leftItemRefs[i]);else if(!o){var s=e.getRefAction(e.leftItemRefs[i]),r=e.getOverflowAction(s);(o=e.overflowItemRefs.find((function(e){return e.current.getAction()===r})))&&t.push(o)}},i=0;i<this.leftItemRefs.length;i++)s();return t}},{key:"getRightBarFocusableItemRefs",value:function(){var e=[];if(0===this.rightItemRefs)return e;for(var t=this.findToolbarTopYCoordinate(),n=0;n<this.rightItemRefs.length;n++){if(this.rightItemRefs[n].current.isEnabled())this.rightItemRefs[n].current.getBoundingRect().top===t&&e.push(this.rightItemRefs[n])}return e.reverse()}},{key:"getOverflowAction",value:function(e){return"overflow_"+e}},{key:"setOverflowIndex",value:function(e){null===e?this.setState({leftOverflowIndex:null,rightOverflowIndex:null}):this.setState({leftOverflowIndex:e,rightOverflowIndex:this.getRightOverflowIndex()})}},{key:"getRightOverflowIndex",value:function(){var e=this,t=this.findFirstRightItemRefNotOnTopRow();return null===t?this.rightBar.length:this.rightBar.findIndex((function(n){return n.action===e.getRefAction(t)}))}},{key:"isFocusActionFocusable",value:function(e,t){return t.findIndex((function(t){var n;return(null===(n=t.current.props.actionObj)||void 0===n?void 0:n.action)===e}))>-1}},{key:"findFirstRightItemRefNotOnTopRow",value:function(){for(var e=this.findToolbarTopYCoordinate(),t=null,n=0;n<this.rightItemRefs.length;n++){this.rightItemRefs[n].current.getBoundingRect().top!==e&&null===t&&(t=this.rightItemRefs[n])}return t}},{key:"findToolbarTopYCoordinate",value:function(){return this.toolbarRef.current.getBoundingClientRect().top}},{key:"generateToolbarItems",value:function(e,t,n){for(var o=[],s=0;s<e.length;s++){var i=e[s];i&&(!i.divider&&t&&o.push(this.generateOverflowItem(s,i.action)),o.push(this.generateToolbarItem(i,s,n)))}return o}},{key:"generateToolbarItem",value:function(e,t,n){var o=null;if(e)if(e.divider)o=d.default.createElement(W,{key:"toolbar-item-key-"+t,isInMenu:!1});else{var s=d.default.createRef();n&&n.push(s),o=d.default.createElement($,{ref:s,key:"toolbar-item-key-"+t,actionObj:e,tooltipDirection:this.props.tooltipDirection,toolbarActionHandler:this.props.toolbarActionHandler,instanceId:this.props.instanceId,containingDivId:this.props.containingDivId,toolbarFocusAction:this.state.focusAction,setToolbarFocusAction:this.setFocusOnItem,isFocusInToolbar:this.isFocusInToolbar,closeAnyOpenSubArea:this.closeAnyOpenSubArea,size:this.props.size})}return o}},{key:"generateOverflowItem",value:function(e,t){var n=this.props.additionalText?this.props.additionalText.overflowMenuLabel:"",o=this.getOverflowAction(t),s=e===this.state.leftOverflowIndex?this.createSubMenuActions():[],i=d.default.createRef();return this.overflowItemRefs.push(i),d.default.createElement(ee,{ref:i,key:"toolbar-overflow-item-key-"+e,index:e,action:o,label:n,size:this.props.size,subMenuActions:s,setOverflowIndex:this.setOverflowIndex,toolbarActionHandler:this.props.toolbarActionHandler,instanceId:this.props.instanceId,containingDivId:this.props.containingDivId,toolbarFocusAction:this.state.focusAction,setToolbarFocusAction:this.setFocusOnItem,isFocusInToolbar:this.isFocusInToolbar,closeAnyOpenSubArea:this.closeAnyOpenSubArea})}},{key:"createSubMenuActions",value:function(){var e=this.leftBar.slice(this.state.leftOverflowIndex),t=this.rightBar.slice(this.state.rightOverflowIndex).reverse();return e.concat(t)}},{key:"closeAnyOpenSubArea",value:function(){var e=this;this.leftItemRefs.forEach((function(t){return e.closeSubAreaOnRef(t)})),this.rightItemRefs.forEach((function(t){return e.closeSubAreaOnRef(t)})),this.overflowItemRefs.forEach((function(t){return e.closeOverflowMenuOnRef(t)}))}},{key:"closeSubAreaOnRef",value:function(e){e.current.props.actionObj.setExtIsSubAreaDisplayed?e.current.props.actionObj.setExtIsSubAreaDisplayed(!1):e.current.state.subAreaDisplayed&&e.current.closeSubArea()}},{key:"closeOverflowMenuOnRef",value:function(e){e.current.state.showExtendedMenu&&e.current.closeSubArea()}},{key:"render",value:function(){this.leftBar=this.props.config.leftBar||[],this.rightBar=this.props.config.rightBar||[],this.rightBar=t._toConsumableArray(this.rightBar).reverse()||[],this.leftItemRefs=[],this.rightItemRefs=[],this.overflowItemRefs=[];var e=this.generateToolbarItems(this.leftBar,!0,this.leftItemRefs),n=this.generateToolbarItems(this.rightBar,!1,this.rightItemRefs),o="sm"===this.props.size?"toolbar-div toolbar-size-small":"toolbar-div",s="toolbar"===this.state.focusAction?0:-1;return d.default.createElement(b.default,{handleWidth:!0,onResize:this.onToolbarResize},d.default.createElement("div",{ref:this.toolbarRef,className:o,instanceid:this.props.instanceId,tabIndex:s,onFocus:this.onFocus,onBlur:this.onBlur,onKeyDown:this.onKeyDown},d.default.createElement("div",{className:"toolbar-left-bar",onScroll:this.onScroll},e),d.default.createElement("div",{className:"toolbar-right-bar"},n)))}}])}(d.default.Component);exports.Toolbar=oe,exports.toInteger_1=x,exports.toNumber_1=D;
2
+ //# sourceMappingURL=toolbar-c4e22755.js.map