@elyra/canvas 12.12.3 → 12.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.stylelintrc.json +17 -16
- package/README.md +1 -1
- package/dist/_baseForOwn-7d4e8506.js.map +1 -1
- package/dist/_baseForOwn-d38b560e.js.map +1 -1
- package/dist/canvas-constants-34cdb7df.js.map +1 -1
- package/dist/canvas-constants-3c09c7f6.js.map +1 -1
- package/dist/{canvas-controller-e91d037b.js → canvas-controller-720a509c.js} +2 -2
- package/dist/canvas-controller-720a509c.js.map +1 -0
- package/dist/canvas-controller-73113a1b.js +2 -0
- package/dist/canvas-controller-73113a1b.js.map +1 -0
- package/dist/common-canvas-21b6ab50.js +2 -0
- package/dist/common-canvas-21b6ab50.js.map +1 -0
- package/dist/common-canvas-baef2726.js +2 -0
- package/dist/common-canvas-baef2726.js.map +1 -0
- package/dist/common-canvas.es.js +1 -1
- package/dist/common-canvas.es.js.map +1 -1
- package/dist/common-canvas.js +1 -1
- package/dist/common-canvas.js.map +1 -1
- package/dist/common-properties-86de4c9f.js +2 -0
- package/dist/common-properties-86de4c9f.js.map +1 -0
- package/dist/common-properties-9e579309.js +2 -0
- package/dist/common-properties-9e579309.js.map +1 -0
- package/dist/createClass-32a0cf0f.js.map +1 -1
- package/dist/createClass-6db89a23.js.map +1 -1
- package/dist/datarecord-metadata-v3-schema-6b6384ff.js.map +1 -1
- package/dist/datarecord-metadata-v3-schema-81228a9a.js.map +1 -1
- package/dist/en-7a0f1db1.js.map +1 -1
- package/dist/en-8647c347.js.map +1 -1
- package/dist/{extends-7fdcdc52.js → extends-1139e06f.js} +2 -2
- package/dist/{extends-7fdcdc52.js.map → extends-1139e06f.js.map} +1 -1
- package/dist/extends-8d17c85c.js.map +1 -1
- package/dist/{flexible-table-a13cb7d0.js → flexible-table-d3598aa8.js} +2 -2
- package/dist/flexible-table-d3598aa8.js.map +1 -0
- package/dist/{flexible-table-50ce600a.js → flexible-table-fe7fbc13.js} +2 -2
- package/dist/flexible-table-fe7fbc13.js.map +1 -0
- package/dist/getPrototypeOf-a1c3fe64.js.map +1 -1
- package/dist/getPrototypeOf-bf88242f.js.map +1 -1
- package/dist/{icon-bf77b2aa.js → icon-918d2dd3.js} +2 -2
- package/dist/{icon-bf77b2aa.js.map → icon-918d2dd3.js.map} +1 -1
- package/dist/{index-f2c306ba.js → index-669f95a7.js} +2 -2
- package/dist/{index-f2c306ba.js.map → index-669f95a7.js.map} +1 -1
- package/dist/{index-0e6c8b9c.js → index-6d3404e1.js} +2 -2
- package/dist/{index-0e6c8b9c.js.map → index-6d3404e1.js.map} +1 -1
- package/dist/isArrayLikeObject-a9c7973b.js.map +1 -1
- package/dist/isArrayLikeObject-f3b27f64.js.map +1 -1
- package/dist/lib/canvas-controller.es.js +1 -1
- package/dist/lib/canvas-controller.js +1 -1
- package/dist/lib/canvas.es.js +1 -1
- package/dist/lib/canvas.js +1 -1
- package/dist/lib/context-menu.es.js +1 -1
- package/dist/lib/properties/field-picker.es.js +1 -1
- package/dist/lib/properties/field-picker.js +1 -1
- package/dist/lib/properties/flexible-table.es.js +1 -1
- package/dist/lib/properties/flexible-table.js +1 -1
- package/dist/lib/properties.es.js +1 -1
- package/dist/lib/properties.js +1 -1
- package/dist/lib/tooltip.es.js +1 -1
- package/dist/lib/tooltip.es.js.map +1 -1
- package/dist/lib/tooltip.js +1 -1
- package/dist/lib/tooltip.js.map +1 -1
- package/dist/styles/common-canvas.min.css +1 -1
- package/dist/styles/common-canvas.min.css.map +1 -1
- package/dist/toolbar-29ec7983.js +2 -0
- package/dist/toolbar-29ec7983.js.map +1 -0
- package/dist/toolbar-3f4b173f.js +2 -0
- package/dist/toolbar-3f4b173f.js.map +1 -0
- package/locales/command-actions/locales/de.json +50 -8
- package/locales/command-actions/locales/en.json +1 -1
- package/locales/command-actions/locales/es.json +50 -8
- package/locales/command-actions/locales/fr.json +50 -8
- package/locales/command-actions/locales/index.js +2 -2
- package/locales/command-actions/locales/it.json +50 -8
- package/locales/command-actions/locales/ja.json +50 -8
- package/locales/command-actions/locales/ko.json +42 -0
- package/locales/command-actions/locales/pt-br.json +50 -8
- package/locales/command-actions/locales/zh-CN.json +51 -0
- package/locales/command-actions/locales/zh-TW.json +51 -0
- package/locales/common-canvas/locales/de.json +36 -26
- package/locales/common-canvas/locales/en.json +14 -1
- package/locales/common-canvas/locales/eo.json +14 -1
- package/locales/common-canvas/locales/es.json +36 -26
- package/locales/common-canvas/locales/fr.json +36 -26
- package/locales/common-canvas/locales/index.js +2 -2
- package/locales/common-canvas/locales/it.json +36 -26
- package/locales/common-canvas/locales/ja.json +36 -26
- package/locales/common-canvas/locales/ko.json +7 -2
- package/locales/common-canvas/locales/pt-br.json +36 -26
- package/locales/common-canvas/locales/zh-CN.json +37 -0
- package/locales/common-canvas/locales/zh-TW.json +37 -0
- package/locales/common-properties/locales/de.json +92 -92
- package/locales/common-properties/locales/en.json +1 -1
- package/locales/common-properties/locales/es.json +92 -92
- package/locales/common-properties/locales/fr.json +92 -92
- package/locales/common-properties/locales/index.js +2 -2
- package/locales/common-properties/locales/it.json +92 -92
- package/locales/common-properties/locales/ja.json +92 -92
- package/locales/common-properties/locales/ko.json +1 -1
- package/locales/common-properties/locales/pt-br.json +92 -92
- package/locales/common-properties/locales/zh-CN.json +93 -0
- package/locales/common-properties/locales/zh-TW.json +93 -0
- package/locales/palette/locales/de.json +9 -9
- package/locales/palette/locales/en.json +6 -6
- package/locales/palette/locales/es.json +9 -9
- package/locales/palette/locales/fr.json +9 -9
- package/locales/palette/locales/index.js +2 -2
- package/locales/palette/locales/it.json +9 -9
- package/locales/palette/locales/ja.json +9 -9
- package/locales/palette/locales/pt-br.json +9 -9
- package/locales/palette/locales/zh-CN.json +10 -0
- package/locales/palette/locales/zh-TW.json +10 -0
- package/locales/toolbar/locales/de.json +7 -7
- package/locales/toolbar/locales/en.json +1 -1
- package/locales/toolbar/locales/es.json +7 -7
- package/locales/toolbar/locales/fr.json +7 -7
- package/locales/toolbar/locales/index.js +2 -2
- package/locales/toolbar/locales/it.json +7 -7
- package/locales/toolbar/locales/ja.json +7 -7
- package/locales/toolbar/locales/pt-br.json +7 -7
- package/locales/toolbar/locales/zh-CN.json +8 -0
- package/locales/toolbar/locales/zh-TW.json +8 -0
- package/package.json +3 -2
- package/src/common-canvas/canvas-controller.js +19 -3
- package/src/common-canvas/cc-bottom-panel.jsx +37 -21
- package/src/common-canvas/cc-central-items.jsx +1 -1
- package/src/common-canvas/cc-contents.jsx +10 -3
- package/src/common-canvas/cc-text-toolbar.jsx +141 -0
- package/src/common-canvas/cc-toolbar.jsx +8 -6
- package/src/common-canvas/common-canvas-utils.js +37 -4
- package/src/common-canvas/common-canvas.scss +52 -5
- package/src/common-canvas/svg-canvas-d3.scss +172 -23
- package/src/common-canvas/svg-canvas-pipeline.js +10 -3
- package/src/common-canvas/svg-canvas-renderer.js +93 -341
- package/src/common-canvas/svg-canvas-utils-decs.js +0 -5
- package/src/common-canvas/svg-canvas-utils-markdown.js +515 -0
- package/src/common-canvas/svg-canvas-utils-nodes.js +0 -5
- package/src/common-canvas/svg-canvas-utils-textarea.js +472 -0
- package/src/common-properties/components/control-item/control-item.scss +1 -1
- package/src/common-properties/components/flexible-table/flexible-table.jsx +14 -3
- package/src/common-properties/components/flexible-table/flexible-table.scss +20 -0
- package/src/common-properties/components/title-editor/title-editor.jsx +2 -2
- package/src/common-properties/components/title-editor/title-editor.scss +1 -16
- package/src/common-properties/controls/abstract-table.jsx +2 -0
- package/src/common-properties/controls/checkbox/checkbox.jsx +1 -1
- package/src/common-properties/controls/checkboxset/checkboxset.jsx +36 -11
- package/src/common-properties/controls/checkboxset/checkboxset.scss +6 -0
- package/src/common-properties/controls/list/list.jsx +1 -0
- package/src/common-properties/controls/radioset/radioset.jsx +25 -1
- package/src/common-properties/controls/radioset/radioset.scss +19 -0
- package/src/common-properties/controls/selectcolumns/selectcolumns.jsx +1 -0
- package/src/common-properties/controls/someofselect/someofselect.jsx +1 -0
- package/src/common-properties/form/ControlInfo.js +3 -0
- package/src/common-properties/form/EditorForm.js +45 -3
- package/src/common-properties/panels/action-panel/action-panel.jsx +38 -3
- package/src/common-properties/panels/action-panel/action-panel.scss +3 -0
- package/src/common-properties/panels/text-panel/text-panel.jsx +38 -7
- package/src/common-properties/panels/text-panel/text-panel.scss +4 -3
- package/src/common-properties/properties-controller.js +39 -12
- package/src/common-properties/ui-conditions/conditions-utils.js +14 -8
- package/src/common-properties/util/L10nProvider.js +6 -0
- package/src/object-model/config-utils.js +1 -0
- package/src/object-model/layout-dimensions.js +14 -2
- package/src/object-model/object-model.js +12 -0
- package/src/object-model/redux/canvas-store.js +4 -1
- package/src/object-model/redux/reducers/bottompanel.js +1 -3
- package/src/object-model/redux/reducers/texttoolbar.js +29 -0
- package/src/palette/palette-content-list-item.jsx +12 -2
- package/src/palette/palette-content-list.jsx +11 -19
- package/src/palette/palette-dialog-content-grid.jsx +1 -6
- package/src/palette/palette-dialog-content.jsx +13 -11
- package/src/palette/palette-flyout-content-category.jsx +90 -57
- package/src/palette/palette-flyout-content.jsx +4 -24
- package/src/palette/palette.scss +72 -44
- package/src/toolbar/toolbar-action-item.jsx +9 -6
- package/src/toolbar/toolbar-overflow-item.jsx +1 -0
- package/src/toolbar/toolbar.jsx +12 -15
- package/src/tooltip/tooltip.jsx +14 -5
- package/stats.html +1 -1
- package/dist/canvas-controller-de76a796.js +0 -2
- package/dist/canvas-controller-de76a796.js.map +0 -1
- package/dist/canvas-controller-e91d037b.js.map +0 -1
- package/dist/common-canvas-522f6263.js +0 -2
- package/dist/common-canvas-522f6263.js.map +0 -1
- package/dist/common-canvas-90539c97.js +0 -2
- package/dist/common-canvas-90539c97.js.map +0 -1
- package/dist/common-properties-245c4711.js +0 -2
- package/dist/common-properties-245c4711.js.map +0 -1
- package/dist/common-properties-49e6bb67.js +0 -2
- package/dist/common-properties-49e6bb67.js.map +0 -1
- package/dist/flexible-table-50ce600a.js.map +0 -1
- package/dist/flexible-table-a13cb7d0.js.map +0 -1
- package/dist/toolbar-1c181339.js +0 -2
- package/dist/toolbar-1c181339.js.map +0 -1
- package/dist/toolbar-c6fa3cdb.js +0 -2
- package/dist/toolbar-c6fa3cdb.js.map +0 -1
- package/locales/command-actions/locales/zh-cn.json +0 -9
- package/locales/command-actions/locales/zh-tw.json +0 -9
- package/locales/common-canvas/locales/zh-cn.json +0 -27
- package/locales/common-canvas/locales/zh-tw.json +0 -27
- package/locales/common-properties/locales/zh-cn.json +0 -93
- package/locales/common-properties/locales/zh-tw.json +0 -93
- package/locales/palette/locales/zh-cn.json +0 -10
- package/locales/palette/locales/zh-tw.json +0 -10
- package/locales/toolbar/locales/zh-cn.json +0 -8
- package/locales/toolbar/locales/zh-tw.json +0 -8
package/dist/toolbar-c6fa3cdb.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{M as e,J as t}from"./isArrayLikeObject-a9c7973b.js";import{b as r}from"./datarecord-metadata-v3-schema-81228a9a.js";import{_ as n,a as o}from"./createClass-32a0cf0f.js";import{_ as a,a as i,b as s,c as l}from"./getPrototypeOf-a1c3fe64.js";import c from"react";import{injectIntl as u}from"react-intl";import d from"react-resize-detector";import C from"./lib/tooltip.es.js";import{Button as h}from"carbon-components-react";import f from"react-inlinesvg";import{c as v}from"./extends-7fdcdc52.js";import{ZoomOut16 as p,ZoomIn16 as m,TrashCan16 as b,AddComment16 as g,Paste16 as E,Copy16 as x,Cut16 as y,Redo16 as w,Undo16 as I,Play16 as F,StopFilledAlt16 as D,OverflowMenuVertical16 as B}from"@carbon/icons-react";import{T as k,b as T,c as M,d as A,e as O,f as R,g as H,h as j,i as N,j as L,k as V,l as Z,m as S,n as z,o as W,p as q,q as P}from"./canvas-constants-3c09c7f6.js";var $=/\s/;var _=function(e){for(var t=e.length;t--&&$.test(e.charAt(t)););return t},J=/^\s+/;var G=function(e){return e?e.slice(0,_(e)+1).replace(J,""):e},K=e,Q=t,U=/^[-+]0x[0-9a-f]+$/i,X=/^0b[01]+$/i,Y=/^0o[0-7]+$/i,ee=parseInt;var te=function(e){if("number"==typeof e)return e;if(Q(e))return NaN;if(K(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=K(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=G(e);var r=X.test(e);return r||Y.test(e)?ee(e.slice(2),r?2:8):U.test(e)?NaN:+e},re={"toolbar.palette":"Palette","toolbar.zoomIn":"Zoom in","toolbar.zoomOut":"Zoom out","toolbar.zoomToFit":"Zoom to fit","toolbar.overflowMenu":"Overflow menu","toolbar.label":"Canvas toolbar"};function ne(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=i(e);if(t){var o=i(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return s(this,r)}}var oe=function(e){a(r,e);var t=ne(r);function r(e){var o;return n(this,r),(o=t.call(this,e)).actionClickHandler=o.actionClickHandler.bind(l(o)),o}return o(r,[{key:"getDefaultIcon",value:function(e){var t=e.iconTypeOverride?e.iconTypeOverride:e.action,r=!e.enable;switch(t){case P:return c.createElement(D,{disabled:r});case q:return c.createElement(F,{disabled:r});case W:return c.createElement(I,{disabled:r});case z:return c.createElement(w,{disabled:r});case S:return c.createElement(y,{disabled:r});case Z:return c.createElement(x,{disabled:r});case V:return c.createElement(E,{disabled:r});case L:return c.createElement(g,{disabled:r});case N:return c.createElement(b,{disabled:r});case j:return c.createElement(m,{disabled:r});case H:return c.createElement(p,{disabled:r});case R:return c.createElement(f,{src:"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22currentColor%22%3E%20%3Cpath%20d%3D%22M6%2C7.5h4v1H6Z%22%2F%3E%20%3Cpath%20d%3D%22M4%2C12h8a.94.94%2C0%2C0%2C0%2C1-1V5a.94.94%2C0%2C0%2C0-1-1H4A.94.94%2C0%2C0%2C0%2C3%2C5v6A.94.94%2C0%2C0%2C0%2C4%2C12ZM4%2C5h8v6H4Z%22%2F%3E%20%3Cpolygon%20points%3D%222%203.5%201%203.5%201%201%203.5%201%203.5%202%202%202%202%203.5%22%2F%3E%20%3Cpolygon%20points%3D%2215%203.5%2014%203.5%2014%202%2012.5%202%2012.5%201%2015%201%2015%203.5%22%2F%3E%20%3Cpolygon%20points%3D%2215%2015%2012.5%2015%2012.5%2014%2014%2014%2014%2012.5%2015%2012.5%2015%2015%22%2F%3E%20%3Cpolygon%20points%3D%223.5%2015%201%2015%201%2012.5%202%2012.5%202%2014%203.5%2014%203.5%2015%22%2F%3E%3C%2Fsvg%3E",disabled:r});case O:return c.createElement(f,{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:r});case A:return c.createElement(f,{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:r});case M:return c.createElement(f,{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%3Crect%20width%3D%2232%22%20height%3D%2232%22%20fill%3D%22none%22%2F%3E%20%3Cpath%20d%3D%22M28%2C4H4A2%2C2%2C0%2C0%2C0%2C2%2C6V26a2%2C2%2C0%2C0%2C0%2C2%2C2H28a2%2C2%2C0%2C0%2C0%2C2-2V6A2%2C2%2C0%2C0%2C0%2C28%2C4Zm0%2C22H12V17.1h8.9l-2.5%2C2.5%2C1.5%2C1.5L25%2C16l-5.1-5.1-1.5%2C1.5%2C2.5%2C2.5H12V6H28Z%22%2F%3E%3C%2Fsvg%3E",disabled:r});case T:return c.createElement(f,{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%3Crect%20width%3D%2232%22%20height%3D%2232%22%20fill%3D%22none%22%2F%3E%20%3Cpath%20d%3D%22M28%2C4H4A2%2C2%2C0%2C0%2C0%2C2%2C6V26a2%2C2%2C0%2C0%2C0%2C2%2C2H28a2%2C2%2C0%2C0%2C0%2C2-2V6A2%2C2%2C0%2C0%2C0%2C28%2C4Zm0%2C11H19.1l2.5-2.5L20.1%2C11%2C15%2C16l5.1%2C5.1%2C1.5-1.5-2.5-2.5H28V26H12V6H28Z%22%2F%3E%3C%2Fsvg%3E",disabled:r});case k:return c.createElement(f,{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:r});default:return null}}},{key:"generateLabel",value:function(e,t,r,n){var o="toolbar-icon-label";return o+=this.generateLabelType(r,n),o+=t?" disabled":"",c.createElement("div",{className:o},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 r=e.iconEnabled,n=e.iconDisabled||e.iconEnabled,o=e.enable?r:n,a="toolbar-icon-"+this.props.instanceId+" -"+e.action;t="string"==typeof o?c.createElement(f,{id:a,src:o,disabled:!e.enable}):o}return t?c.createElement("div",{className:"toolbar-icon"},t):null}},{key:"actionClickHandler",value:function(){this.props.toolbarActionHandler(this.props.actionObj.action)}},{key:"generateButton",value:function(e){var t=null,r=null;this.props.overflow?r=this.generateLabel(e.label,!e.enable,!0):"before"===e.incLabelWithIcon?t=this.generateLabel(e.label,!e.enable,!1,e.incLabelWithIcon):"after"===e.incLabelWithIcon&&(r=this.generateLabel(e.label,!e.enable,!1,e.incLabelWithIcon));var n=this.generateIcon(e),o=e.textContent?c.createElement("div",{className:"toolbar-text-content"}," ",e.textContent," "):null,a=v("toolbar-item-content",e.className?e.className:null,{overflow:this.props.overflow,disabled:!e.enable,default:!e.kind}),i=e.kind||"ghost",s=c.createElement("div",{className:a},t,n,r,o);return s=this.wrapInTooltip(s),s=c.createElement(h,{kind:i,onClick:this.actionClickHandler,disabled:!e.enable,onFocus:this.props.onFocus,"aria-label":e.label},s)}},{key:"generateActionName",value:function(e){return this.props.actionObj.action+"-action"}},{key:"wrapInTooltip",value:function(e){if(!this.props.overflow&&(this.showLabelAsTip(this.props.actionObj)||this.props.actionObj.tooltip)){var t=this.generateActionName(),r=this.props.actionObj.tooltip?this.props.actionObj.tooltip:this.props.actionObj.label,n=t+"-"+this.props.instanceId+"-tooltip",o=!!this.props.actionObj.enable&&this.props.actionObj.enable;return c.createElement(C,{id:n,tip:r,disable:!o,className:"icon-tooltip"},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,t=this.generateActionName(),r=null;r=e.jsx?this.wrapInTooltip(e.jsx):this.generateButton(e);var n=!this.props.overflow||null,o=e.kind?e.kind:"default",a=v({"toolbar-overflow-menu-item":this.props.overflow,"toolbar-item":!this.props.overflow&&!e.jsx,"toolbar-jsx-item":!this.props.overflow&&e.jsx,"toolbar-overflow-jsx-item":this.props.overflow&&e.jsx,"toolbar-item-selected":e.isSelected},o,t);return c.createElement("div",{className:a,"data-toolbar-item":n},r)}}]),r}(c.Component);function ae(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=i(e);if(t){var o=i(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return s(this,r)}}var ie=function(e){a(r,e);var t=ae(r);function r(e){var o;return n(this,r),(o=t.call(this,e)).toggleExtendedMenu=o.toggleExtendedMenu.bind(l(o)),o}return o(r,[{key:"toggleExtendedMenu",value:function(){this.props.toggleExtendedMenu(this.props.index)}},{key:"render",value:function(){var e=this.props.showExtendedMenu?this.props.generateExtensionMenuItems(this.props.index):[],t=this.props.showExtendedMenu?"":"toolbar-popover-list-hide",r=null;e.length>0&&(r=c.createElement("div",{className:"toolbar-popover-list "+t},e));var n="toolbar-spacer toolbar-index-"+this.props.index;return c.createElement("div",{className:n},c.createElement("div",{className:"toolbar-overflow-item"},c.createElement(h,{kind:"ghost",onClick:this.toggleExtendedMenu,onFocus:this.props.onFocus,"aria-label":this.props.label},c.createElement("div",{className:"toolbar-item-content default"},c.createElement("div",{className:"toolbar-icon"},c.createElement(B,null))))),r)}}]),r}(c.Component);function se(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=i(e);if(t){var o=i(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return s(this,r)}}var le=function(e){a(r,e);var t=se(r);function r(){return n(this,r),t.apply(this,arguments)}return o(r,[{key:"render",value:function(){var e=this.props.overflow?"toolbar-divider-overflow":"toolbar-divider";return c.createElement("div",{className:e,"data-toolbar-item":!0,tabIndex:-1,"aria-hidden":!0}," ")}}]),r}(c.Component);function ce(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=i(e);if(t){var o=i(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return s(this,r)}}var ue=u(function(e){a(i,e);var t=ce(i);function i(e){var r;return n(this,i),(r=t.call(this,e)).state={showExtendedMenuIndex:-1},r.leftBar=[],r.rightBar=[],r.onFocus=r.onFocus.bind(l(r)),r.onToolbarResize=r.onToolbarResize.bind(l(r)),r.toggleExtendedMenu=r.toggleExtendedMenu.bind(l(r)),r.generateExtensionMenuItems=r.generateExtensionMenuItems.bind(l(r)),r}return o(i,[{key:"onFocus",value:function(){this.setLeftBarItemsTabIndex(),this.setRightBarItemsTabIndex()}},{key:"onScroll",value:function(e){e.currentTarget.scroll(0,0),e.preventDefault()}},{key:"onToolbarResize",value:function(){this.state.showExtendedMenuIndex>-1&&this.setState({showExtendedMenuIndex:-1}),this.setLeftBarItemsTabIndex(),this.setRightBarItemsTabIndex()}},{key:"setLeftBarItemsTabIndex",value:function(){var e=this.getBar("left");if(e){for(var t=e.querySelectorAll("[data-toolbar-item=true]")||[],r=this.getTopOfFirstOverflowItem(e),n=-1,o=0;o<t.length;o++){var a=t[o].getBoundingClientRect();this.setOverflowItemButtonTabIndex(o,-1,e),a.top===r?(n=o,this.setToolbarItemButtonTabIndex(t[o],0)):this.setToolbarItemButtonTabIndex(t[o],-1)}n<t.length&&this.setOverflowItemButtonTabIndex(n+1,0,e)}}},{key:"setRightBarItemsTabIndex",value:function(){for(var e=this.getRightBarItems(),t=0,r=0;r<e.length;r++){var n=e[r].getBoundingClientRect();0===r&&(t=n.top),n.top===t?this.setToolbarItemButtonTabIndex(e[r],0):this.setToolbarItemButtonTabIndex(e[r],-1)}}},{key:"getBar",value:function(e){var t=this.props.instanceId;return document.querySelector(".toolbar-div[instanceid='".concat(t,"'] > .toolbar-").concat(e,"-bar"))||[]}},{key:"getRightBarItems",value:function(){var e=this.getBar("right");return e&&e.querySelectorAll("[data-toolbar-item=true]")||[]}},{key:"getTopOfFirstOverflowItem",value:function(e){var t=this.getOverflowItem(0,e);return t?t.getBoundingClientRect().top:0}},{key:"getOverflowItem",value:function(e,t){var r="toolbar-index-"+e;return t.getElementsByClassName(r)[0]}},{key:"setToolbarItemButtonTabIndex",value:function(e,t){var r=e.querySelector("button");r&&r.setAttribute("tabindex",t)}},{key:"setOverflowItemButtonTabIndex",value:function(e,t,r){var n=this.getOverflowItem(e,r);if(n){var o=n.querySelector("button");o&&o.setAttribute("tabindex",t)}}},{key:"generateToolbarItems",value:function(e,t,r){for(var n=[],o=0;o<e.length;o++){var a=e[o];a&&(r&&!a.divider&&n.push(this.generateOverflowIcon(o)),n.push(this.generateToolbarItem(a,o,t)))}return n}},{key:"generateToolbarItem",value:function(e,t,r){var n=null;return e&&(n=e.divider?c.createElement(le,{key:"toolbar-item-key-"+t,overflow:r}):c.createElement(oe,{key:"toolbar-item-key-"+t,actionObj:e,toolbarActionHandler:this.props.toolbarActionHandler,overflow:r,instanceId:this.props.instanceId,onFocus:this.onFocus})),n}},{key:"generateOverflowIcon",value:function(e){var t=this.props.additionalText?this.props.additionalText.overflowMenuLabel:"";return c.createElement(ie,{key:"toolbar-overflow-item-key-"+e,index:e,showExtendedMenu:this.state.showExtendedMenuIndex===e,toggleExtendedMenu:this.toggleExtendedMenu,generateExtensionMenuItems:this.generateExtensionMenuItems,onFocus:this.onFocus,label:t})}},{key:"generateExtensionMenuItems",value:function(e){var t=this.generateRightOverflowItems();t.reverse();var r=this.leftBar.slice(e).concat(t);return this.generateToolbarItems(r,!0,!1)}},{key:"generateRightOverflowItems",value:function(){for(var e=[],t=this.getRightBarItems(),r=0,n=0;n<t.length;n++){var o=t[n].getBoundingClientRect();0===n&&(r=o.top),o.top!==r&&e.push(this.rightBar[n])}return e}},{key:"toggleExtendedMenu",value:function(e){var t=e===this.state.showExtendedMenuIndex?-1:e;this.setState({showExtendedMenuIndex:t})}},{key:"render",value:function(){this.leftBar=this.props.config.leftBar||[],this.rightBar=this.props.config.rightBar||[],this.rightBar=r(this.rightBar).reverse()||[];var e=this.generateToolbarItems(this.leftBar,!1,!0),t=this.generateToolbarItems(this.rightBar,!1,!1);return c.createElement("section",{"aria-label":this.props.intl.formatMessage({id:"toolbar.label",defaultMessage:re["toolbar.label"]}),role:"toolbar"},c.createElement(d,{handleWidth:!0,onResize:this.onToolbarResize},c.createElement("div",{className:"toolbar-div",instanceid:this.props.instanceId},c.createElement("div",{className:"toolbar-left-bar",onScroll:this.onScroll},e),c.createElement("div",{className:"toolbar-right-bar"},t))))}}]),i}(c.Component));export{ue as T,re as d,te as t};
|
|
2
|
-
//# sourceMappingURL=toolbar-c6fa3cdb.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toolbar-c6fa3cdb.js","sources":["../node_modules/lodash/_trimmedEndIndex.js","../node_modules/lodash/_baseTrim.js","../node_modules/lodash/toNumber.js","../src/toolbar/toolbar-action-item.jsx","../assets/images/zoom_to_fit.svg","../assets/images/arrange_horizontally.svg","../assets/images/arrange_vertically.svg","../assets/images/palette/palette_open.svg","../assets/images/palette/palette_close.svg","../assets/images/notification_counter_icon.svg","../src/toolbar/toolbar-overflow-item.jsx","../src/toolbar/toolbar-divider-item.jsx","../src/toolbar/toolbar.jsx"],"sourcesContent":["/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nmodule.exports = trimmedEndIndex;\n","var trimmedEndIndex = require('./_trimmedEndIndex');\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nmodule.exports = baseTrim;\n","var baseTrim = require('./_baseTrim'),\n isObject = require('./isObject'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = toNumber;\n","/*\n * Copyright 2017-2022 Elyra Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport Tooltip from \"../tooltip/tooltip.jsx\";\nimport ArrangeHorizontally from \"./../../assets/images/arrange_horizontally.svg\";\nimport ArrangeVertically from \"./../../assets/images/arrange_vertically.svg\";\nimport ToggleNotificationPanel from \"./../../assets/images/notification_counter_icon.svg\";\nimport PaletteClose from \"./../../assets/images/palette/palette_close.svg\";\nimport PaletteOpen from \"./../../assets/images/palette/palette_open.svg\";\nimport ZoomToFit from \"./../../assets/images/zoom_to_fit.svg\";\n\nimport { Button } from \"carbon-components-react\";\nimport SVG from \"react-inlinesvg\";\nimport classNames from \"classnames\";\nimport { StopFilledAlt16, Play16, Undo16, Redo16, Cut16, Copy16, Paste16,\n\tAddComment16, TrashCan16, ZoomIn16, ZoomOut16 } from \"@carbon/icons-react\";\nimport { TOOLBAR_STOP, TOOLBAR_RUN, TOOLBAR_UNDO, TOOLBAR_REDO, TOOLBAR_CUT,\n\tTOOLBAR_COPY, TOOLBAR_PASTE, TOOLBAR_CREATE_AUTO_COMMENT,\n\tTOOLBAR_DELETE_SELECTED_OBJECTS, TOOLBAR_ZOOM_IN, TOOLBAR_ZOOM_OUT, TOOLBAR_ZOOM_FIT,\n\tTOOLBAR_ARRANGE_HORIZONALLY, TOOLBAR_ARRANGE_VERTICALLY, TOOLBAR_OPEN_PALETTE,\n\tTOOLBAR_CLOSE_PALETTE, TOOLBAR_TOGGLE_NOTIFICATION_PANEL }\n\tfrom \"../common-canvas/constants/canvas-constants.js\";\n\nclass ToolbarActionItem extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\n\t\tthis.actionClickHandler = this.actionClickHandler.bind(this);\n\t}\n\n\t// Returns a default icon, if there is one, for the action passed in. The\n\t// icon may be overridden by the iconTypeOverride field if it is provided.\n\t// It also may be set to disabled state.\n\tgetDefaultIcon(actionObj) {\n\t\tconst iconType = actionObj.iconTypeOverride ? actionObj.iconTypeOverride : actionObj.action;\n\t\tconst disabled = !actionObj.enable;\n\n\t\tswitch (iconType) {\n\t\tcase (TOOLBAR_STOP):\n\t\t\treturn <StopFilledAlt16 disabled={disabled} />;\n\t\tcase (TOOLBAR_RUN):\n\t\t\treturn <Play16 disabled={disabled} />;\n\t\tcase (TOOLBAR_UNDO):\n\t\t\treturn <Undo16 disabled={disabled} />;\n\t\tcase (TOOLBAR_REDO):\n\t\t\treturn <Redo16 disabled={disabled} />;\n\t\tcase (TOOLBAR_CUT):\n\t\t\treturn <Cut16 disabled={disabled} />;\n\t\tcase (TOOLBAR_COPY):\n\t\t\treturn <Copy16 disabled={disabled} />;\n\t\tcase (TOOLBAR_PASTE):\n\t\t\treturn <Paste16 disabled={disabled} />;\n\t\tcase (TOOLBAR_CREATE_AUTO_COMMENT):\n\t\t\treturn <AddComment16 disabled={disabled} />;\n\t\tcase (TOOLBAR_DELETE_SELECTED_OBJECTS):\n\t\t\treturn <TrashCan16 disabled={disabled} />;\n\t\tcase (TOOLBAR_ZOOM_IN):\n\t\t\treturn <ZoomIn16 disabled={disabled} />;\n\t\tcase (TOOLBAR_ZOOM_OUT):\n\t\t\treturn <ZoomOut16 disabled={disabled} />;\n\n\t\tcase (TOOLBAR_ZOOM_FIT):\n\t\t\treturn <SVG src={ZoomToFit} disabled={disabled} />;\n\t\tcase (TOOLBAR_ARRANGE_HORIZONALLY):\n\t\t\treturn <SVG src={ArrangeHorizontally} disabled={disabled} />;\n\t\tcase (TOOLBAR_ARRANGE_VERTICALLY):\n\t\t\treturn <SVG src={ArrangeVertically} disabled={disabled} />;\n\t\tcase (TOOLBAR_OPEN_PALETTE):\n\t\t\treturn <SVG src={PaletteOpen} disabled={disabled} />;\n\t\tcase (TOOLBAR_CLOSE_PALETTE):\n\t\t\treturn <SVG src={PaletteClose} disabled={disabled} />;\n\t\tcase (TOOLBAR_TOGGLE_NOTIFICATION_PANEL):\n\t\t\treturn <SVG src={ToggleNotificationPanel} disabled={disabled} />;\n\n\t\tdefault:\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tgenerateLabel(label, disable, overflow, incLabelWithIcon) {\n\t\tlet className = \"toolbar-icon-label\";\n\t\tclassName += this.generateLabelType(overflow, incLabelWithIcon);\n\t\tclassName += disable ? \" disabled\" : \"\";\n\t\treturn (<div className={className}>{label}</div>);\n\t}\n\n\tgenerateLabelType(overflow, inLabelWithIcon) {\n\t\tif (overflow) {\n\t\t\treturn \" overflow\";\n\t\t} else if (inLabelWithIcon === \"before\") {\n\t\t\treturn \" before\";\n\t\t} else if (inLabelWithIcon === \"after\") {\n\t\t\treturn \" after\";\n\t\t}\n\t\treturn \"\";\n\t}\n\n\tgenerateIcon(actionObj) {\n\t\tlet icon = this.getDefaultIcon(actionObj);\n\n\t\t// Host application provided icon. This will override any default icon.\n\t\tif (actionObj.iconEnabled) {\n\t\t\tconst iconEnabled = actionObj.iconEnabled;\n\t\t\tconst iconDisabled = actionObj.iconDisabled || actionObj.iconEnabled;\n\t\t\tconst customIcon = actionObj.enable ? iconEnabled : iconDisabled;\n\t\t\tconst id = \"toolbar-icon-\" + this.props.instanceId + \" -\" + actionObj.action;\n\n\t\t\tif (typeof customIcon === \"string\") {\n\t\t\t\ticon = (<SVG id={id} src={customIcon} disabled={!actionObj.enable} />);\n\t\t\t} else {\n\t\t\t\ticon = customIcon;\n\t\t\t}\n\t\t}\n\n\t\tif (icon) {\n\t\t\treturn (\n\t\t\t\t<div className={\"toolbar-icon\"}>\n\t\t\t\t\t{icon}\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t}\n\n\tactionClickHandler() {\n\t\tthis.props.toolbarActionHandler(this.props.actionObj.action);\n\t}\n\n\tgenerateButton(actionObj) {\n\t\tlet labelBefore = null;\n\t\tlet labelAfter = null;\n\n\t\tif (this.props.overflow) {\n\t\t\tlabelAfter = this.generateLabel(actionObj.label, !actionObj.enable, true);\n\n\t\t} else if (actionObj.incLabelWithIcon === \"before\") {\n\t\t\tlabelBefore = this.generateLabel(actionObj.label, !actionObj.enable, false, actionObj.incLabelWithIcon);\n\n\t\t} else if (actionObj.incLabelWithIcon === \"after\") {\n\t\t\tlabelAfter = this.generateLabel(actionObj.label, !actionObj.enable, false, actionObj.incLabelWithIcon);\n\t\t}\n\n\t\tconst icon = this.generateIcon(actionObj);\n\t\tconst textContent = actionObj.textContent ? (<div className=\"toolbar-text-content\"> {actionObj.textContent} </div>) : null;\n\n\t\tconst itemContentClassName = classNames(\n\t\t\t\"toolbar-item-content\",\n\t\t\tactionObj.className ? actionObj.className : null,\n\t\t\t{ \"overflow\": this.props.overflow, \"disabled\": !actionObj.enable, \"default\": !actionObj.kind });\n\n\t\t// If no 'kind' is set, use ghost and then override colors using the \"default\" class in innerDivClassName.\n\t\tconst kind = actionObj.kind || \"ghost\";\n\n\t\tlet buttonContent = (\n\t\t\t<div className={itemContentClassName}>\n\t\t\t\t{labelBefore}\n\t\t\t\t{icon}\n\t\t\t\t{labelAfter}\n\t\t\t\t{textContent}\n\t\t\t</div>\n\t\t);\n\n\t\tbuttonContent = this.wrapInTooltip(buttonContent);\n\n\t\tbuttonContent = (\n\t\t\t<Button kind={kind}\n\t\t\t\tonClick={this.actionClickHandler}\n\t\t\t\tdisabled={!actionObj.enable}\n\t\t\t\tonFocus={this.props.onFocus}\n\t\t\t\taria-label={actionObj.label}\n\t\t\t>\n\t\t\t\t{buttonContent}\n\t\t\t</Button>\n\t\t);\n\n\t\treturn buttonContent;\n\t}\n\n\tgenerateActionName(actionObj) {\n\t\treturn this.props.actionObj.action + \"-action\";\n\t}\n\n\twrapInTooltip(content) {\n\t\tif (!this.props.overflow && (this.showLabelAsTip(this.props.actionObj) || this.props.actionObj.tooltip)) {\n\t\t\tconst actionName = this.generateActionName();\n\t\t\tconst tipText = this.props.actionObj.tooltip ? this.props.actionObj.tooltip : this.props.actionObj.label;\n\t\t\tconst tooltipId = actionName + \"-\" + this.props.instanceId + \"-tooltip\";\n\t\t\tconst enableTooltip = this.props.actionObj.enable ? this.props.actionObj.enable : false;\n\n\t\t\treturn (\n\t\t\t\t<Tooltip id={tooltipId} tip={tipText} disable={!enableTooltip} className=\"icon-tooltip\" >\n\t\t\t\t\t{content}\n\t\t\t\t</Tooltip>\n\t\t\t);\n\t\t}\n\t\treturn content;\n\t}\n\n\t// Returns true if the label should be shown as a tooltip or false if not.\n\t// We do not show the label as a tooltip if it is already shown in the\n\t// toolbar next to the icon (i.e. incLabelWithIcon is set to something).\n\tshowLabelAsTip(actionObj) {\n\t\tif (actionObj.label) {\n\t\t\tif (actionObj.incLabelWithIcon === \"before\" ||\n\t\t\t\t\tactionObj.incLabelWithIcon === \"after\") {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\trender() {\n\t\tconst actionObj = this.props.actionObj;\n\t\tconst actionName = this.generateActionName();\n\t\tlet divContent = null;\n\n\t\tif (actionObj.jsx) {\n\t\t\tdivContent = this.wrapInTooltip(actionObj.jsx);\n\t\t} else {\n\t\t\tdivContent = this.generateButton(actionObj);\n\t\t}\n\n\t\tconst isToolbarItem = this.props.overflow ? null : true; // null wil make data-toolbar-item be removed\n\t\tconst kindAsClass = actionObj.kind ? actionObj.kind : \"default\";\n\n\t\tconst itemClassName = classNames(\n\t\t\t{ \"toolbar-overflow-menu-item\": this.props.overflow,\n\t\t\t\t\"toolbar-item\": !this.props.overflow && !actionObj.jsx,\n\t\t\t\t\"toolbar-jsx-item\": !this.props.overflow && actionObj.jsx,\n\t\t\t\t\"toolbar-overflow-jsx-item\": this.props.overflow && actionObj.jsx,\n\t\t\t\t\"toolbar-item-selected\": actionObj.isSelected },\n\t\t\tkindAsClass,\n\t\t\tactionName);\n\n\t\treturn (\n\t\t\t<div className={itemClassName} data-toolbar-item={isToolbarItem}>\n\t\t\t\t{divContent}\n\t\t\t</div>\n\t\t);\n\t}\n}\n\nToolbarActionItem.propTypes = {\n\tactionObj: PropTypes.shape({\n\t\taction: PropTypes.string.isRequired,\n\t\tlabel: PropTypes.oneOfType([\n\t\t\tPropTypes.string,\n\t\t\tPropTypes.object\n\t\t]),\n\t\tincLabelWithIcon: PropTypes.oneOf([\"no\", \"before\", \"after\"]),\n\t\tenable: PropTypes.bool,\n\t\ticonEnabled: PropTypes.oneOfType([\n\t\t\tPropTypes.string,\n\t\t\tPropTypes.object\n\t\t]),\n\t\ticonDisabled: PropTypes.oneOfType([\n\t\t\tPropTypes.string,\n\t\t\tPropTypes.object\n\t\t]),\n\t\tclassName: PropTypes.string,\n\t\ttextContent: PropTypes.string,\n\t\ticonTypeOverride: PropTypes.string,\n\t\tisSelected: PropTypes.bool,\n\t\tkind: PropTypes.string,\n\t\tjsx: PropTypes.object,\n\t\ttooltip: PropTypes.oneOfType([\n\t\t\tPropTypes.string,\n\t\t\tPropTypes.object\n\t\t])\n\t}),\n\ttoolbarActionHandler: PropTypes.func.isRequired,\n\tinstanceId: PropTypes.number.isRequired,\n\toverflow: PropTypes.bool,\n\tonFocus: PropTypes.func\n};\n\nexport default ToolbarActionItem;\n","export default \"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22currentColor%22%3E%20%3Cpath%20d%3D%22M6%2C7.5h4v1H6Z%22%2F%3E%20%3Cpath%20d%3D%22M4%2C12h8a.94.94%2C0%2C0%2C0%2C1-1V5a.94.94%2C0%2C0%2C0-1-1H4A.94.94%2C0%2C0%2C0%2C3%2C5v6A.94.94%2C0%2C0%2C0%2C4%2C12ZM4%2C5h8v6H4Z%22%2F%3E%20%3Cpolygon%20points%3D%222%203.5%201%203.5%201%201%203.5%201%203.5%202%202%202%202%203.5%22%2F%3E%20%3Cpolygon%20points%3D%2215%203.5%2014%203.5%2014%202%2012.5%202%2012.5%201%2015%201%2015%203.5%22%2F%3E%20%3Cpolygon%20points%3D%2215%2015%2012.5%2015%2012.5%2014%2014%2014%2014%2012.5%2015%2012.5%2015%2015%22%2F%3E%20%3Cpolygon%20points%3D%223.5%2015%201%2015%201%2012.5%202%2012.5%202%2014%203.5%2014%203.5%2015%22%2F%3E%3C%2Fsvg%3E\"","export default \"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\"","export default \"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\"","export default \"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%3Crect%20width%3D%2232%22%20height%3D%2232%22%20fill%3D%22none%22%2F%3E%20%3Cpath%20d%3D%22M28%2C4H4A2%2C2%2C0%2C0%2C0%2C2%2C6V26a2%2C2%2C0%2C0%2C0%2C2%2C2H28a2%2C2%2C0%2C0%2C0%2C2-2V6A2%2C2%2C0%2C0%2C0%2C28%2C4Zm0%2C22H12V17.1h8.9l-2.5%2C2.5%2C1.5%2C1.5L25%2C16l-5.1-5.1-1.5%2C1.5%2C2.5%2C2.5H12V6H28Z%22%2F%3E%3C%2Fsvg%3E\"","export default \"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%3Crect%20width%3D%2232%22%20height%3D%2232%22%20fill%3D%22none%22%2F%3E%20%3Cpath%20d%3D%22M28%2C4H4A2%2C2%2C0%2C0%2C0%2C2%2C6V26a2%2C2%2C0%2C0%2C0%2C2%2C2H28a2%2C2%2C0%2C0%2C0%2C2-2V6A2%2C2%2C0%2C0%2C0%2C28%2C4Zm0%2C11H19.1l2.5-2.5L20.1%2C11%2C15%2C16l5.1%2C5.1%2C1.5-1.5-2.5-2.5H28V26H12V6H28Z%22%2F%3E%3C%2Fsvg%3E\"","export default \"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\"","/*\n * Copyright 2017-2022 Elyra Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { Button } from \"carbon-components-react\";\nimport { OverflowMenuVertical16 } from \"@carbon/icons-react\";\n\nclass ToolbarOverflowItem extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.toggleExtendedMenu = this.toggleExtendedMenu.bind(this);\n\t}\n\n\ttoggleExtendedMenu() {\n\t\tthis.props.toggleExtendedMenu(this.props.index);\n\t}\n\n\trender() {\n\t\tconst menuItems = this.props.showExtendedMenu ? this.props.generateExtensionMenuItems(this.props.index) : [];\n\t\tconst subMenuClassName = this.props.showExtendedMenu ? \"\" : \"toolbar-popover-list-hide\";\n\n\t\tlet overflowMenu = null;\n\t\tif (menuItems.length > 0) {\n\t\t\toverflowMenu = (\n\t\t\t\t<div className={\"toolbar-popover-list \" + subMenuClassName}>\n\t\t\t\t\t{menuItems}\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\tconst className = \"toolbar-spacer toolbar-index-\" + this.props.index;\n\n\t\treturn (\n\t\t\t<div className={className} >\n\t\t\t\t<div className={\"toolbar-overflow-item\"}>\n\t\t\t\t\t<Button kind=\"ghost\"\n\t\t\t\t\t\tonClick={this.toggleExtendedMenu}\n\t\t\t\t\t\tonFocus={this.props.onFocus}\n\t\t\t\t\t\taria-label={this.props.label}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"toolbar-item-content default\">\n\t\t\t\t\t\t\t<div className=\"toolbar-icon\">\n\t\t\t\t\t\t\t\t<OverflowMenuVertical16 />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t\t{overflowMenu}\n\t\t\t</div>\n\t\t);\n\t}\n}\n\nToolbarOverflowItem.propTypes = {\n\tshowExtendedMenu: PropTypes.bool.isRequired,\n\ttoggleExtendedMenu: PropTypes.func.isRequired,\n\tindex: PropTypes.number.isRequired,\n\tgenerateExtensionMenuItems: PropTypes.func,\n\tonFocus: PropTypes.func,\n\tlabel: PropTypes.string\n};\n\nexport default ToolbarOverflowItem;\n","/*\n * Copyright 2017-2022 Elyra Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React from \"react\";\nimport PropTypes from \"prop-types\";\n\nclass ToolbarDividerItem extends React.Component {\n\n\trender() {\n\t\tconst dividerClassName = this.props.overflow ? \"toolbar-divider-overflow\" : \"toolbar-divider\";\n\n\t\t// Add a space as content. When using display: inline-block the div needs\n\t\t// some content so it is displayed inline with the other elements of the\n\t\t// toolbar. With no content it is displayed above (!) the other elements.\n\t\treturn (\n\t\t\t<div className={dividerClassName} data-toolbar-item tabIndex={-1} aria-hidden > </div>\n\t\t);\n\t}\n}\n\nToolbarDividerItem.propTypes = {\n\toverflow: PropTypes.bool\n};\n\nexport default ToolbarDividerItem;\n","/*\n * Copyright 2017-2022 Elyra Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport React from \"react\";\nimport { injectIntl } from \"react-intl\";\nimport PropTypes from \"prop-types\";\nimport defaultMessages from \"../../locales/toolbar/locales/en.json\";\nimport ReactResizeDetector from \"react-resize-detector\";\n\nimport ToolbarActionItem from \"./toolbar-action-item.jsx\";\nimport ToolbarOverflowItem from \"./toolbar-overflow-item.jsx\";\nimport ToolbarDividerItem from \"./toolbar-divider-item.jsx\";\n\nclass Toolbar extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\n\t\tthis.state = {\n\t\t\tshowExtendedMenuIndex: -1\n\t\t};\n\n\t\tthis.leftBar = [];\n\t\tthis.rightBar = [];\n\n\t\tthis.onFocus = this.onFocus.bind(this);\n\t\tthis.onToolbarResize = this.onToolbarResize.bind(this);\n\t\tthis.toggleExtendedMenu = this.toggleExtendedMenu.bind(this);\n\t\tthis.generateExtensionMenuItems = this.generateExtensionMenuItems.bind(this);\n\t}\n\n\t// When the toolbar is initially opened the tabindex for each element may not\n\t// be set correctly because of the time it takes to initially render the DOM.\n\t// Typically, this means the tabindex is not set correctly on whichever\n\t// overflow menu icon is displayed. Therefore, as the user moves the focus\n\t// to the first element in the toolbar (whose tabindex IS typically OK) we\n\t// set the tabindex for all elements again, this then sets the overflow\n\t// icon's tabindex correctly.\n\tonFocus() {\n\t\tthis.setLeftBarItemsTabIndex();\n\t\tthis.setRightBarItemsTabIndex();\n\t}\n\n\t// Prevents the inline-block elements of the left bar being scrolled to\n\t// reveal the wrapped elements, when the user tabs through the elements.\n\tonScroll(evt) {\n\t\tevt.currentTarget.scroll(0, 0);\n\t\tevt.preventDefault();\n\t}\n\n\t// Close the overflow menu, if it is open, when the toolbar is resized in\n\t// case a new menu needs to be displayed with the new toolbar width.\n\tonToolbarResize() {\n\t\tif (this.state.showExtendedMenuIndex > -1) {\n\t\t\tthis.setState({ showExtendedMenuIndex: -1 });\n\t\t}\n\n\t\tthis.setLeftBarItemsTabIndex();\n\t\tthis.setRightBarItemsTabIndex();\n\t}\n\n\t// Sets the tabindex on all left bar items so tabbing works correctly. This\n\t// falls into two parts: 1. Set the tabindex for all overflow items to -1\n\t// except the overflow item that is displayed (if there is one). 2. Set the\n\t// tabindex of all hidden regular toolbar items to -1 and to 0 for all\n\t// displayed regular toolbar items.\n\t// Note: We detect the y coordinate of the 'top row' by using the top of\n\t// the first overflow icon. This is because the toolbar might be compressed\n\t// to the extent that the first overflow icon is the only item on the left\n\t// of the toolbar.\n\tsetLeftBarItemsTabIndex() {\n\t\tconst bar = this.getBar(\"left\");\n\t\tif (!bar) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst items = bar.querySelectorAll(\"[data-toolbar-item=true]\") || [];\n\t\tconst topRow = this.getTopOfFirstOverflowItem(bar);\n\t\tlet lastTopRowElement = -1;\n\n\t\tfor (let i = 0; i < items.length; i++) {\n\t\t\tconst itemRect = items[i].getBoundingClientRect();\n\n\t\t\tthis.setOverflowItemButtonTabIndex(i, -1, bar);\n\n\t\t\tif (itemRect.top === topRow) {\n\t\t\t\tlastTopRowElement = i;\n\t\t\t\tthis.setToolbarItemButtonTabIndex(items[i], 0);\n\t\t\t} else {\n\t\t\t\tthis.setToolbarItemButtonTabIndex(items[i], -1);\n\t\t\t}\n\t\t}\n\n\t\tif (lastTopRowElement < items.length) {\n\t\t\tthis.setOverflowItemButtonTabIndex(lastTopRowElement + 1, 0, bar);\n\t\t}\n\t}\n\n\t// Sets the tabindex on all right bar items so tabbing works correctly. This\n\t// involves setting the tabindex of all hidden regular toolbar items to -1\n\t// and to 0 for all displayed regular toolbar items.\n\tsetRightBarItemsTabIndex() {\n\t\tconst items = this.getRightBarItems();\n\t\tlet topRow = 0;\n\n\t\tfor (let i = 0; i < items.length; i++) {\n\t\t\tconst itemRect = items[i].getBoundingClientRect();\n\n\t\t\tif (i === 0) {\n\t\t\t\ttopRow = itemRect.top;\n\t\t\t}\n\n\t\t\tif (itemRect.top === topRow) {\n\t\t\t\tthis.setToolbarItemButtonTabIndex(items[i], 0);\n\t\t\t} else {\n\t\t\t\tthis.setToolbarItemButtonTabIndex(items[i], -1);\n\t\t\t}\n\t\t}\n\t}\n\n\tgetBar(side) {\n\t\tconst id = this.props.instanceId;\n\t\tconst part = document.querySelector(`.toolbar-div[instanceid='${id}'] > .toolbar-${side}-bar`) || [];\n\t\treturn part;\n\t}\n\n\tgetRightBarItems() {\n\t\tconst bar = this.getBar(\"right\");\n\t\tif (!bar) {\n\t\t\treturn [];\n\t\t}\n\t\treturn bar.querySelectorAll(\"[data-toolbar-item=true]\") || [];\n\t}\n\n\tgetTopOfFirstOverflowItem(bar) {\n\t\tconst firstOverflowItem = this.getOverflowItem(0, bar);\n\t\tif (firstOverflowItem) {\n\t\t\tconst rect = firstOverflowItem.getBoundingClientRect();\n\t\t\treturn rect.top;\n\t\t}\n\t\treturn 0;\n\t}\n\n\tgetOverflowItem(index, bar) {\n\t\tconst overflowClassName = \"toolbar-index-\" + index;\n\t\treturn bar.getElementsByClassName(overflowClassName)[0];\n\t}\n\n\tsetToolbarItemButtonTabIndex(item, tabIndex) {\n\t\tconst button = item.querySelector(\"button\");\n\t\tif (button) {\n\t\t\tbutton.setAttribute(\"tabindex\", tabIndex);\n\t\t}\n\t}\n\n\tsetOverflowItemButtonTabIndex(index, tabIndex, bar) {\n\t\tconst overflowItem = this.getOverflowItem(index, bar);\n\t\tif (overflowItem) {\n\t\t\tconst overflowButton = overflowItem.querySelector(\"button\");\n\t\t\tif (overflowButton) {\n\t\t\t\toverflowButton.setAttribute(\"tabindex\", tabIndex);\n\t\t\t}\n\t\t}\n\t}\n\n\tgenerateToolbarItems(actionDefinitions, overflow, withSpacer) {\n\t\tconst newItems = [];\n\n\t\tfor (let i = 0; i < actionDefinitions.length; i++) {\n\t\t\tconst actionObj = actionDefinitions[i];\n\t\t\tif (actionObj) {\n\t\t\t\tif (withSpacer && !actionObj.divider) {\n\t\t\t\t\tnewItems.push(this.generateOverflowIcon(i));\n\t\t\t\t}\n\t\t\t\tnewItems.push(this.generateToolbarItem(actionObj, i, overflow));\n\t\t\t}\n\t\t}\n\t\treturn newItems;\n\t}\n\n\tgenerateToolbarItem(actionObj, i, overflow) {\n\t\tlet jsx = null;\n\t\tif (actionObj) {\n\t\t\tif (actionObj.divider) {\n\t\t\t\tjsx = (\n\t\t\t\t\t<ToolbarDividerItem\n\t\t\t\t\t\tkey={\"toolbar-item-key-\" + i}\n\t\t\t\t\t\toverflow={overflow}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tjsx = (\n\t\t\t\t\t<ToolbarActionItem\n\t\t\t\t\t\tkey={\"toolbar-item-key-\" + i}\n\t\t\t\t\t\tactionObj={actionObj}\n\t\t\t\t\t\ttoolbarActionHandler={this.props.toolbarActionHandler}\n\t\t\t\t\t\toverflow={overflow}\n\t\t\t\t\t\tinstanceId={this.props.instanceId}\n\t\t\t\t\t\tonFocus={this.onFocus}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\treturn jsx;\n\t}\n\n\tgenerateOverflowIcon(index) {\n\t\tconst label = this.props.additionalText ? this.props.additionalText.overflowMenuLabel : \"\";\n\t\tconst jsx = (\n\t\t\t<ToolbarOverflowItem\n\t\t\t\tkey={\"toolbar-overflow-item-key-\" + index}\n\t\t\t\tindex={index}\n\t\t\t\tshowExtendedMenu={this.state.showExtendedMenuIndex === index}\n\t\t\t\ttoggleExtendedMenu={this.toggleExtendedMenu}\n\t\t\t\tgenerateExtensionMenuItems={this.generateExtensionMenuItems}\n\t\t\t\tonFocus={this.onFocus}\n\t\t\t\tlabel={label}\n\t\t\t/>\n\t\t);\n\n\t\treturn jsx;\n\t}\n\n\t// Generates an array of action definition elements that correspond to the\n\t// hidden DOM items on the left and right of the toolbar. For any left bar\n\t// items we can use the leftIndex passed in to split the leftBar defintion\n\t// array, however for the right side we need to loop through the DOM items\n\t// and discover which is hidden and which is displayed.\n\tgenerateExtensionMenuItems(leftIndex) {\n\t\tconst rightItems = this.generateRightOverflowItems();\n\t\trightItems.reverse();\n\n\t\tconst overflowMenuBarItems = this.leftBar.slice(leftIndex).concat(rightItems);\n\t\tconst extensionItems = this.generateToolbarItems(overflowMenuBarItems, true, false);\n\t\treturn extensionItems;\n\t}\n\n\t// Generates an array of right side defintion items that correspond to\n\t// right side DOM items that are hidden.\n\tgenerateRightOverflowItems() {\n\t\tconst newDefItems = [];\n\t\tconst items = this.getRightBarItems();\n\t\tlet topRow = 0;\n\n\t\tfor (let i = 0; i < items.length; i++) {\n\t\t\tconst rect = items[i].getBoundingClientRect();\n\n\t\t\tif (i === 0) {\n\t\t\t\ttopRow = rect.top;\n\t\t\t}\n\n\t\t\tif (rect.top !== topRow) {\n\t\t\t\tnewDefItems.push(this.rightBar[i]);\n\t\t\t}\n\t\t}\n\t\treturn newDefItems;\n\t}\n\n\ttoggleExtendedMenu(index) {\n\t\tconst newIndex = index === this.state.showExtendedMenuIndex ? -1 : index;\n\t\tthis.setState({ showExtendedMenuIndex: newIndex });\n\t}\n\n\trender() {\n\t\tthis.leftBar = this.props.config.leftBar || [];\n\t\tthis.rightBar = this.props.config.rightBar || [];\n\t\tthis.rightBar = [...this.rightBar].reverse() || [];\n\n\t\tconst leftItems = this.generateToolbarItems(this.leftBar, false, true);\n\t\tconst rightItems = this.generateToolbarItems(this.rightBar, false, false);\n\n\t\tconst canvasToolbar = (\n\t\t\t<section aria-label={this.props.intl.formatMessage({ id: \"toolbar.label\", defaultMessage: defaultMessages[\"toolbar.label\"] })} role=\"toolbar\">\n\t\t\t\t<ReactResizeDetector handleWidth onResize={this.onToolbarResize}>\n\t\t\t\t\t<div className=\"toolbar-div\" instanceid={this.props.instanceId}>\n\t\t\t\t\t\t<div className=\"toolbar-left-bar\" onScroll={this.onScroll}>\n\t\t\t\t\t\t\t{leftItems}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"toolbar-right-bar\">\n\t\t\t\t\t\t\t{rightItems}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</ReactResizeDetector>\n\t\t\t</section>\n\t\t);\n\t\treturn canvasToolbar;\n\t}\n}\n\nToolbar.propTypes = {\n\tintl: PropTypes.object.isRequired,\n\tconfig: PropTypes.object.isRequired,\n\tinstanceId: PropTypes.number,\n\ttoolbarActionHandler: PropTypes.func,\n\tadditionalText: PropTypes.object\n};\n\nexport default injectIntl(Toolbar);\n"],"names":["reWhitespace","trimmedEndIndex","string","index","length","test","charAt","reTrimStart","baseTrim","slice","replace","isObject","require$$1","isSymbol","require$$2","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","toNumber_1","value","other","valueOf","isBinary","props","_classCallCheck","_this","actionClickHandler","bind","actionObj","iconType","iconTypeOverride","action","disabled","enable","TOOLBAR_STOP","React","StopFilledAlt16","TOOLBAR_RUN","Play16","TOOLBAR_UNDO","Undo16","TOOLBAR_REDO","Redo16","TOOLBAR_CUT","Cut16","TOOLBAR_COPY","Copy16","TOOLBAR_PASTE","Paste16","TOOLBAR_CREATE_AUTO_COMMENT","AddComment16","TOOLBAR_DELETE_SELECTED_OBJECTS","TrashCan16","TOOLBAR_ZOOM_IN","ZoomIn16","TOOLBAR_ZOOM_OUT","ZoomOut16","TOOLBAR_ZOOM_FIT","SVG","src","TOOLBAR_ARRANGE_HORIZONALLY","TOOLBAR_ARRANGE_VERTICALLY","TOOLBAR_OPEN_PALETTE","TOOLBAR_CLOSE_PALETTE","TOOLBAR_TOGGLE_NOTIFICATION_PANEL","label","disable","overflow","incLabelWithIcon","className","this","generateLabelType","inLabelWithIcon","icon","getDefaultIcon","iconEnabled","iconDisabled","customIcon","id","instanceId","toolbarActionHandler","labelBefore","labelAfter","generateLabel","generateIcon","textContent","itemContentClassName","classNames","default","kind","buttonContent","wrapInTooltip","Button","onClick","onFocus","content","showLabelAsTip","tooltip","actionName","generateActionName","tipText","tooltipId","enableTooltip","Tooltip","tip","divContent","jsx","generateButton","isToolbarItem","kindAsClass","itemClassName","isSelected","Component","toggleExtendedMenu","menuItems","showExtendedMenu","generateExtensionMenuItems","subMenuClassName","overflowMenu","OverflowMenuVertical16","dividerClassName","tabIndex","injectIntl","state","showExtendedMenuIndex","leftBar","rightBar","onToolbarResize","setLeftBarItemsTabIndex","setRightBarItemsTabIndex","evt","currentTarget","scroll","preventDefault","setState","bar","getBar","items","querySelectorAll","topRow","getTopOfFirstOverflowItem","lastTopRowElement","i","itemRect","getBoundingClientRect","setOverflowItemButtonTabIndex","top","setToolbarItemButtonTabIndex","getRightBarItems","side","document","querySelector","firstOverflowItem","getOverflowItem","overflowClassName","getElementsByClassName","item","button","setAttribute","overflowItem","overflowButton","actionDefinitions","withSpacer","newItems","divider","push","generateOverflowIcon","generateToolbarItem","ToolbarDividerItem","key","ToolbarActionItem","additionalText","overflowMenuLabel","ToolbarOverflowItem","leftIndex","rightItems","generateRightOverflowItems","reverse","overflowMenuBarItems","concat","generateToolbarItems","newDefItems","rect","newIndex","config","_toConsumableArray","leftItems","intl","formatMessage","defaultMessage","defaultMessages","role","ReactResizeDetector","handleWidth","onResize","instanceid","onScroll"],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"palette.saved.nodes.description": "此类别中的节点是先前从流程中保存所得。",
|
|
3
|
-
"palette.saved.nodes.label": "已保存的节点",
|
|
4
|
-
"supernode.binding.node.description": "超节点绑定节点",
|
|
5
|
-
"supernode.binding.node.label": "绑定",
|
|
6
|
-
"supernode.new.port.label": "超节点的绑定端口",
|
|
7
|
-
"supernode.template.description": "这个超节点是由公共画布创建的。",
|
|
8
|
-
"supernode.template.label": "超节点"
|
|
9
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"palette.saved.nodes.description": "先前已從流程儲存此種類中的節點。",
|
|
3
|
-
"palette.saved.nodes.label": "已存節點",
|
|
4
|
-
"supernode.binding.node.description": "超級節點連結節點",
|
|
5
|
-
"supernode.binding.node.label": "連結",
|
|
6
|
-
"supernode.new.port.label": "超級節點的連結埠",
|
|
7
|
-
"supernode.template.description": "此超級節點由一般畫布建立。",
|
|
8
|
-
"supernode.template.label": "超級節點"
|
|
9
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"canvas.addComment": "新建注释",
|
|
3
|
-
"canvas.addNodeToStart": "通过添加节点开始。",
|
|
4
|
-
"canvas.deleteObject": "删除",
|
|
5
|
-
"canvas.flowIsEmpty": "该流程是空的。",
|
|
6
|
-
"canvas.label": "画布",
|
|
7
|
-
"canvas.redo": "重做",
|
|
8
|
-
"canvas.selectAll": "全选",
|
|
9
|
-
"canvas.undo": "撤销",
|
|
10
|
-
"canvas.validateFlow": "验证流",
|
|
11
|
-
"edit.copySelection": "复制",
|
|
12
|
-
"edit.cutSelection": "剪切",
|
|
13
|
-
"edit.pasteSelection": "粘贴",
|
|
14
|
-
"link.deleteLink": "删除",
|
|
15
|
-
"menu.highlight": "突出显示",
|
|
16
|
-
"menu.highlightBranch": "突出显示分支",
|
|
17
|
-
"menu.highlightDownstream": "突出显示下游",
|
|
18
|
-
"menu.highlightUpstream": "突出显示上游",
|
|
19
|
-
"menu.unhighlight": "取消突出显示",
|
|
20
|
-
"node.collapseSupernodeInPlace": "折叠超节点",
|
|
21
|
-
"node.createSupernode": "创建超节点",
|
|
22
|
-
"node.disconnectNode": "断开连接",
|
|
23
|
-
"node.editMenu": "编辑",
|
|
24
|
-
"node.editNode": "打开",
|
|
25
|
-
"node.expandSupernodeInPlace": "扩展超节点",
|
|
26
|
-
"node.saveToPalette": "保存到选用板"
|
|
27
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"canvas.addComment": "新建註解",
|
|
3
|
-
"canvas.addNodeToStart": "從新增節點開始。",
|
|
4
|
-
"canvas.deleteObject": "刪除",
|
|
5
|
-
"canvas.flowIsEmpty": "您的流程為空。",
|
|
6
|
-
"canvas.label": "畫布",
|
|
7
|
-
"canvas.redo": "重做",
|
|
8
|
-
"canvas.selectAll": "全選",
|
|
9
|
-
"canvas.undo": "復原",
|
|
10
|
-
"canvas.validateFlow": "檢驗流程",
|
|
11
|
-
"edit.copySelection": "複製",
|
|
12
|
-
"edit.cutSelection": "剪下",
|
|
13
|
-
"edit.pasteSelection": "貼上",
|
|
14
|
-
"link.deleteLink": "刪除",
|
|
15
|
-
"menu.highlight": "強調顯示",
|
|
16
|
-
"menu.highlightBranch": "強調顯示分支",
|
|
17
|
-
"menu.highlightDownstream": "強調顯示下游",
|
|
18
|
-
"menu.highlightUpstream": "強調顯示上游",
|
|
19
|
-
"menu.unhighlight": "取消強調顯示",
|
|
20
|
-
"node.collapseSupernodeInPlace": "收合超級節點",
|
|
21
|
-
"node.createSupernode": "建立超級節點",
|
|
22
|
-
"node.disconnectNode": "中斷連線",
|
|
23
|
-
"node.editMenu": "編輯",
|
|
24
|
-
"node.editNode": "開啟",
|
|
25
|
-
"node.expandSupernodeInPlace": "展開超級節點",
|
|
26
|
-
"node.saveToPalette": "儲存至選用區"
|
|
27
|
-
}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"alerts.tab.title": "警报",
|
|
3
|
-
"control.summary.error": "{errorMsgCount} 个参数有错误。",
|
|
4
|
-
"control.summary.error.warning": "{errorMsgCount} 个参数有错误,{warningMsgCount} 个参数有警告。",
|
|
5
|
-
"control.summary.warning": "{warningMsgCount} 个参数有警告。",
|
|
6
|
-
"datetime.format.error": "{role} 无效。格式应为 {format}。",
|
|
7
|
-
"datetimefield.format.error.message": "提供的对象格式无效。请检查输入定义。",
|
|
8
|
-
"dropdown.tooltip.clear.all": "全部清除",
|
|
9
|
-
"dropdown.tooltip.clear.selection": "清除选择",
|
|
10
|
-
"dropdown.tooltip.closeMenu": "关闭菜单",
|
|
11
|
-
"dropdown.tooltip.openMenu": "打开菜单",
|
|
12
|
-
"editorform.group.type.error": "(组类型“{group.groupType()}”未知)",
|
|
13
|
-
"expression.all.functions": "所有函数",
|
|
14
|
-
"expression.builder.icon.description": "启动表达式构建器",
|
|
15
|
-
"expression.builder.label": "表达式",
|
|
16
|
-
"expression.builder.title": "表达式构建器",
|
|
17
|
-
"expression.field.column": "字段",
|
|
18
|
-
"expression.field.tab": "字段",
|
|
19
|
-
"expression.fields.dropdown": "字段",
|
|
20
|
-
"expression.fields.table.label": "字段表",
|
|
21
|
-
"expression.fields.title": "字段",
|
|
22
|
-
"expression.function.column": "函数",
|
|
23
|
-
"expression.functions.tab": "函数",
|
|
24
|
-
"expression.functions.table.label": "函数表",
|
|
25
|
-
"expression.max.label": "最大值",
|
|
26
|
-
"expression.min.label": "最小值",
|
|
27
|
-
"expression.no.functions": "找不到函数。",
|
|
28
|
-
"expression.recently.used": "最近使用",
|
|
29
|
-
"expression.recently.used.column": "项",
|
|
30
|
-
"expression.return.column": "返回",
|
|
31
|
-
"expression.storage.column": "存储器",
|
|
32
|
-
"expression.validate.label": "验证",
|
|
33
|
-
"expression.validating.label": "正在验证",
|
|
34
|
-
"expression.value.column": "值",
|
|
35
|
-
"expression.values.table.label": "值表",
|
|
36
|
-
"expression.values.title": "值",
|
|
37
|
-
"fieldPicker.dataTypeColumn.label": "数据类型",
|
|
38
|
-
"fieldPicker.date.label": "日期",
|
|
39
|
-
"fieldPicker.double.label": "双精度",
|
|
40
|
-
"fieldPicker.fieldColumn.label": "字段名",
|
|
41
|
-
"fieldPicker.filter.label": "过滤:",
|
|
42
|
-
"fieldPicker.integer.label": "整数",
|
|
43
|
-
"fieldPicker.resetButton.label": "重置 ",
|
|
44
|
-
"fieldPicker.saveButton.label": "选择对应以下项的字段:",
|
|
45
|
-
"fieldPicker.saveButton.tooltip": "保存并返回",
|
|
46
|
-
"fieldPicker.schemaColumn.label": "模式名称",
|
|
47
|
-
"fieldPicker.string.label": "字符串",
|
|
48
|
-
"fieldPicker.time.label": "时间",
|
|
49
|
-
"fieldPicker.timestamp.label": "时间戳记",
|
|
50
|
-
"flyout.applyButton.label": "确定",
|
|
51
|
-
"flyout.rejectButton.label": "取消",
|
|
52
|
-
"invalid.field.error": "{label} 无效,字段在数据集中找不到。",
|
|
53
|
-
"list.table.label": "值",
|
|
54
|
-
"moveable.table.button.bottom": "移至底部",
|
|
55
|
-
"moveable.table.button.down": "下移",
|
|
56
|
-
"moveable.table.button.top": "移至顶部",
|
|
57
|
-
"moveable.table.button.up": "上移",
|
|
58
|
-
"multi.selected.row.action": "如果更改此行中的值,就会更改所有允许的选定行中的值。",
|
|
59
|
-
"multi.selected.row.label": "行已选定。",
|
|
60
|
-
"multiselect.dropdown.empty.label": "未选择任何项",
|
|
61
|
-
"multiselect.dropdown.options.selected.label": "个选项已选定",
|
|
62
|
-
"properties.close.message": "单击“关闭”以退出该窗格。然后,请重试您的操作。",
|
|
63
|
-
"properties.empty.table.text": "要开始,请单击“{button_label}”",
|
|
64
|
-
"properties.label": "属性",
|
|
65
|
-
"properties.revert.message": "单击“还原”以回到前一个屏幕,或单击“关闭”以退出该窗格。然后,请重试您的操作。",
|
|
66
|
-
"properties.support.message": "如果该问题仍存在,请与支持人员联系。",
|
|
67
|
-
"properties.unexpected.message": "抱歉,该窗格未装入。",
|
|
68
|
-
"propertiesEdit.applyButton.label": "保存",
|
|
69
|
-
"propertiesEdit.closeButton.label": "关闭",
|
|
70
|
-
"propertiesEdit.rejectButton.label": "取消",
|
|
71
|
-
"propertiesEdit.resizeButton.contract.label": "合同",
|
|
72
|
-
"propertiesEdit.resizeButton.expand.label": "展开",
|
|
73
|
-
"propertiesEdit.revertButton.label": "还原",
|
|
74
|
-
"readonlytable.edit.button.label": "编辑",
|
|
75
|
-
"required.error": "必需参数“{label}”没有值。",
|
|
76
|
-
"structureListEditor.addButton.label": "添加值",
|
|
77
|
-
"structureListEditor.removeButton.label": "移除",
|
|
78
|
-
"structureTable.addButton.label": "添加列",
|
|
79
|
-
"structureTable.removeButton.label": "移除",
|
|
80
|
-
"subPanel.button.tooltip": "编辑",
|
|
81
|
-
"summary.longTable.placeholder": "超过 10 个字段...",
|
|
82
|
-
"table.search.header": "在表中查看",
|
|
83
|
-
"table.search.label": "在 {table_name} 表中搜索",
|
|
84
|
-
"table.search.placeholder": "在 {column_name} 列中查找",
|
|
85
|
-
"table.summary.error": "{errorMsgCount} 个单元格有错误。",
|
|
86
|
-
"table.summary.warning": "{warningMsgCount} 个单元格有警告。",
|
|
87
|
-
"title.editor.helpButton.label": "帮助",
|
|
88
|
-
"title.editor.label": "编辑标题",
|
|
89
|
-
"toggletext.icon.description": "“{toggletext_label}”图标",
|
|
90
|
-
"truncate.long.string.error": "这些值超过 {truncate_limit} 个字符的显示限制,无法编辑。",
|
|
91
|
-
"virtualizedTable.header.checkbox.label": "选择全部 {header_checkbox_label}",
|
|
92
|
-
"virtualizedTable.row.checkbox.label": "选择 {table_label} 中的第 {row_index} 行"
|
|
93
|
-
}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"alerts.tab.title": "警示數",
|
|
3
|
-
"control.summary.error": "有 {errorMsgCount} 個參數有錯誤。",
|
|
4
|
-
"control.summary.error.warning": "有 {errorMsgCount} 個參數有錯誤,並且有 {warningMsgCount} 個參數有警告。",
|
|
5
|
-
"control.summary.warning": "有 {warningMsgCount} 個參數有警告。",
|
|
6
|
-
"datetime.format.error": "{role} 無效。格式應為 {format}。",
|
|
7
|
-
"datetimefield.format.error.message": "所提供的格式物件無效。請檢查輸入定義。",
|
|
8
|
-
"dropdown.tooltip.clear.all": "全部清除",
|
|
9
|
-
"dropdown.tooltip.clear.selection": "清除選項",
|
|
10
|
-
"dropdown.tooltip.closeMenu": "關閉功能表",
|
|
11
|
-
"dropdown.tooltip.openMenu": "開啟功能表",
|
|
12
|
-
"editorform.group.type.error": "(不明群組類型 '{group.groupType()}')",
|
|
13
|
-
"expression.all.functions": "全部函數",
|
|
14
|
-
"expression.builder.icon.description": "啟動表示式建置器",
|
|
15
|
-
"expression.builder.label": "表示式",
|
|
16
|
-
"expression.builder.title": "表示式建構器",
|
|
17
|
-
"expression.field.column": "欄位",
|
|
18
|
-
"expression.field.tab": "欄位",
|
|
19
|
-
"expression.fields.dropdown": "欄位",
|
|
20
|
-
"expression.fields.table.label": "欄位表格",
|
|
21
|
-
"expression.fields.title": "欄位",
|
|
22
|
-
"expression.function.column": "功能",
|
|
23
|
-
"expression.functions.tab": "函數",
|
|
24
|
-
"expression.functions.table.label": "功能表格",
|
|
25
|
-
"expression.max.label": "最大值",
|
|
26
|
-
"expression.min.label": "最小值",
|
|
27
|
-
"expression.no.functions": "找不到函數。",
|
|
28
|
-
"expression.recently.used": "最近使用",
|
|
29
|
-
"expression.recently.used.column": "項目",
|
|
30
|
-
"expression.return.column": "傳回",
|
|
31
|
-
"expression.storage.column": "儲存體",
|
|
32
|
-
"expression.validate.label": "驗證",
|
|
33
|
-
"expression.validating.label": "正在驗證",
|
|
34
|
-
"expression.value.column": "值",
|
|
35
|
-
"expression.values.table.label": "值表格",
|
|
36
|
-
"expression.values.title": "值",
|
|
37
|
-
"fieldPicker.dataTypeColumn.label": "資料類型",
|
|
38
|
-
"fieldPicker.date.label": "日期",
|
|
39
|
-
"fieldPicker.double.label": "倍精準數",
|
|
40
|
-
"fieldPicker.fieldColumn.label": "欄位名稱",
|
|
41
|
-
"fieldPicker.filter.label": "過濾:",
|
|
42
|
-
"fieldPicker.integer.label": "整數",
|
|
43
|
-
"fieldPicker.resetButton.label": "重設 ",
|
|
44
|
-
"fieldPicker.saveButton.label": "選取欄位",
|
|
45
|
-
"fieldPicker.saveButton.tooltip": "儲存並返回",
|
|
46
|
-
"fieldPicker.schemaColumn.label": "綱目名稱",
|
|
47
|
-
"fieldPicker.string.label": "字串",
|
|
48
|
-
"fieldPicker.time.label": "時間",
|
|
49
|
-
"fieldPicker.timestamp.label": "時間戳記",
|
|
50
|
-
"flyout.applyButton.label": "確定",
|
|
51
|
-
"flyout.rejectButton.label": "取消",
|
|
52
|
-
"invalid.field.error": "無效的 {label},在資料集中找不到欄位。",
|
|
53
|
-
"list.table.label": "值",
|
|
54
|
-
"moveable.table.button.bottom": "移至底端",
|
|
55
|
-
"moveable.table.button.down": "下移",
|
|
56
|
-
"moveable.table.button.top": "移至頂端",
|
|
57
|
-
"moveable.table.button.up": "上移",
|
|
58
|
-
"multi.selected.row.action": "變更此列中的值將會變更所有容許的所選列中的值。",
|
|
59
|
-
"multi.selected.row.label": "列已選定。",
|
|
60
|
-
"multiselect.dropdown.empty.label": "沒有選取任何項目",
|
|
61
|
-
"multiselect.dropdown.options.selected.label": "個選項已選取",
|
|
62
|
-
"properties.close.message": "按一下「關閉」以結束窗格。然後重試作業。",
|
|
63
|
-
"properties.empty.table.text": "若要開始,請按一下「{button_label}」",
|
|
64
|
-
"properties.label": "內容",
|
|
65
|
-
"properties.revert.message": "按一下「回復」以返回前一個畫面,或按一下「關閉」以結束窗格。然後重試作業。",
|
|
66
|
-
"properties.support.message": "如果問題持續發生,請聯絡「支援中心」。",
|
|
67
|
-
"properties.unexpected.message": "糟糕,窗格未載入。",
|
|
68
|
-
"propertiesEdit.applyButton.label": "儲存",
|
|
69
|
-
"propertiesEdit.closeButton.label": "關閉",
|
|
70
|
-
"propertiesEdit.rejectButton.label": "取消",
|
|
71
|
-
"propertiesEdit.resizeButton.contract.label": "合約",
|
|
72
|
-
"propertiesEdit.resizeButton.expand.label": "展開",
|
|
73
|
-
"propertiesEdit.revertButton.label": "回復",
|
|
74
|
-
"readonlytable.edit.button.label": "編輯",
|
|
75
|
-
"required.error": "必要的參數 ''{label}'' 沒有值。",
|
|
76
|
-
"structureListEditor.addButton.label": "新增值",
|
|
77
|
-
"structureListEditor.removeButton.label": "移除",
|
|
78
|
-
"structureTable.addButton.label": "新增直欄",
|
|
79
|
-
"structureTable.removeButton.label": "移除",
|
|
80
|
-
"subPanel.button.tooltip": "編輯",
|
|
81
|
-
"summary.longTable.placeholder": "超過十個欄位...",
|
|
82
|
-
"table.search.header": "在表格中檢視",
|
|
83
|
-
"table.search.label": "在 {table_name} 表格中搜尋",
|
|
84
|
-
"table.search.placeholder": "在直欄 {column_name} 中尋找",
|
|
85
|
-
"table.summary.error": "有 {errorMsgCount} 個錯誤資料格。",
|
|
86
|
-
"table.summary.warning": "有 {warningMsgCount} 個警告資料格。",
|
|
87
|
-
"title.editor.helpButton.label": "說明",
|
|
88
|
-
"title.editor.label": "編輯標題",
|
|
89
|
-
"toggletext.icon.description": "{toggletext_label} 圖示",
|
|
90
|
-
"truncate.long.string.error": "這些值超出顯示限制({truncate_limit} 個字元)且無法編輯。",
|
|
91
|
-
"virtualizedTable.header.checkbox.label": "選取所有 {header_checkbox_label}",
|
|
92
|
-
"virtualizedTable.row.checkbox.label": "從 {table_label} 中選取列 {row_index}"
|
|
93
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"palette.dialog.label": "对话框选用板",
|
|
3
|
-
"palette.flyout.label": "弹窗选用板",
|
|
4
|
-
"palette.flyout.search.adjustsearch": "请尝试调整搜索,以找到您所查找的内容。",
|
|
5
|
-
"palette.flyout.search.less": "缩小显示范围",
|
|
6
|
-
"palette.flyout.search.more": "扩大显示范围",
|
|
7
|
-
"palette.flyout.search.noresults": "未找到结果。",
|
|
8
|
-
"palette.flyout.search.placeholder": "查找选用板节点",
|
|
9
|
-
"palette.flyout.search.resultsrestricted": "结果限制为 10 个节点。请尝试优化搜索。"
|
|
10
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"palette.dialog.label": "對話選用區",
|
|
3
|
-
"palette.flyout.label": "飛出視窗選用區",
|
|
4
|
-
"palette.flyout.search.adjustsearch": "嘗試調整搜尋,以找到您正在尋找的項目。",
|
|
5
|
-
"palette.flyout.search.less": "顯示較少",
|
|
6
|
-
"palette.flyout.search.more": "顯示更多",
|
|
7
|
-
"palette.flyout.search.noresults": "找不到結果。",
|
|
8
|
-
"palette.flyout.search.placeholder": "尋找選用區節點",
|
|
9
|
-
"palette.flyout.search.resultsrestricted": "結果限制為 10 個節點。嘗試精簡搜尋。"
|
|
10
|
-
}
|