@elyra/canvas 12.32.1 → 12.33.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/dist/{_baseIteratee-eabd2a94.js → _baseIteratee-2a601011.js} +2 -2
- package/dist/{_baseIteratee-eabd2a94.js.map → _baseIteratee-2a601011.js.map} +1 -1
- package/dist/{_baseIteratee-e1311552.js → _baseIteratee-7fb1949c.js} +2 -2
- package/dist/{_baseIteratee-e1311552.js.map → _baseIteratee-7fb1949c.js.map} +1 -1
- package/dist/canvas-controller-2df80dc3.js +2 -0
- package/dist/canvas-controller-2df80dc3.js.map +1 -0
- package/dist/canvas-controller-c0b65951.js +2 -0
- package/dist/canvas-controller-c0b65951.js.map +1 -0
- package/dist/{common-canvas-159fb083.js → common-canvas-da94213a.js} +2 -2
- package/dist/{common-canvas-318d3486.js.map → common-canvas-da94213a.js.map} +1 -1
- package/dist/{common-canvas-318d3486.js → common-canvas-dcc564f1.js} +2 -2
- package/dist/{common-canvas-159fb083.js.map → common-canvas-dcc564f1.js.map} +1 -1
- package/dist/common-canvas.es.js +1 -1
- package/dist/common-canvas.js +1 -1
- package/dist/common-properties-c6bc9d53.js +2 -0
- package/dist/common-properties-c6bc9d53.js.map +1 -0
- package/dist/common-properties-e3da18c4.js +2 -0
- package/dist/common-properties-e3da18c4.js.map +1 -0
- package/dist/{flexible-table-4259d869.js → flexible-table-11488132.js} +2 -2
- package/dist/flexible-table-11488132.js.map +1 -0
- package/dist/{flexible-table-23d61157.js → flexible-table-a7325a4e.js} +2 -2
- package/dist/flexible-table-a7325a4e.js.map +1 -0
- package/dist/{icon-8cc7816d.js → icon-111df69c.js} +2 -2
- package/dist/{icon-8cc7816d.js.map → icon-111df69c.js.map} +1 -1
- package/dist/{icon-04f858ce.js → icon-cc184f86.js} +2 -2
- package/dist/{icon-04f858ce.js.map → icon-cc184f86.js.map} +1 -1
- package/dist/{index-101f9560.js → index-d75b9194.js} +2 -2
- package/dist/{index-101f9560.js.map → index-d75b9194.js.map} +1 -1
- package/dist/{index-2788d55d.js → index-e76525b3.js} +2 -2
- package/dist/{index-2788d55d.js.map → index-e76525b3.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/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/{toolbar-12f6def6.js → toolbar-556dad41.js} +2 -2
- package/dist/{toolbar-12f6def6.js.map → toolbar-556dad41.js.map} +1 -1
- package/dist/{toolbar-55e2020e.js → toolbar-df55ee97.js} +2 -2
- package/dist/{toolbar-55e2020e.js.map → toolbar-df55ee97.js.map} +1 -1
- package/locales/common-canvas/locales/de.json +1 -0
- package/locales/common-canvas/locales/es.json +1 -0
- package/locales/common-canvas/locales/fr.json +1 -0
- package/locales/common-canvas/locales/it.json +1 -0
- package/locales/common-canvas/locales/ja.json +1 -0
- package/locales/common-canvas/locales/ko.json +1 -0
- package/locales/common-canvas/locales/pt-br.json +1 -0
- package/locales/common-canvas/locales/sv.json +1 -0
- package/locales/common-canvas/locales/zh-CN.json +1 -0
- package/locales/common-canvas/locales/zh-TW.json +1 -0
- package/locales/common-properties/locales/de.json +2 -0
- package/locales/common-properties/locales/es.json +2 -0
- package/locales/common-properties/locales/fr.json +2 -0
- package/locales/common-properties/locales/it.json +2 -0
- package/locales/common-properties/locales/ja.json +2 -0
- package/locales/common-properties/locales/ko.json +2 -0
- package/locales/common-properties/locales/pt-br.json +2 -0
- package/locales/common-properties/locales/sv.json +2 -0
- package/locales/common-properties/locales/zh-CN.json +2 -0
- package/locales/common-properties/locales/zh-TW.json +2 -0
- package/package.json +1 -1
- package/src/common-canvas/svg-canvas-renderer.js +132 -16
- package/src/common-properties/components/flexible-table/flexible-table.jsx +5 -5
- package/src/common-properties/constants/constants.js +1 -1
- package/src/common-properties/controls/numberfield/numberfield.jsx +21 -2
- package/src/object-model/config-utils.js +1 -0
- package/stats.html +1 -1
- package/dist/canvas-controller-69928ea7.js +0 -2
- package/dist/canvas-controller-69928ea7.js.map +0 -1
- package/dist/canvas-controller-978f3e99.js +0 -2
- package/dist/canvas-controller-978f3e99.js.map +0 -1
- package/dist/common-properties-96c9c88a.js +0 -2
- package/dist/common-properties-96c9c88a.js.map +0 -1
- package/dist/common-properties-c5292c66.js +0 -2
- package/dist/common-properties-c5292c66.js.map +0 -1
- package/dist/flexible-table-23d61157.js.map +0 -1
- package/dist/flexible-table-4259d869.js.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("./extends-1b35a664.js"),t=require("./createClass-826941b3.js"),r=require("./getPrototypeOf-1e698126.js"),o=require("./isArrayLikeObject-0cd02b77.js"),i=require("react"),l=require("react-intl"),s=require("react-dom"),a=require("carbon-components-react"),n=require("./_baseIteratee-e1311552.js"),d=require("react-virtualized"),c=require("react-draggable"),p=require("@carbon/icons-react"),u=require("./lib/tooltip.js"),h=require("uuid"),f=require("react-resize-detector");function b(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=b(i),v=b(s),w=b(c),y=b(f),g={"subPanel.button.tooltip":"Edit","structureListEditor.addButton.label":"Add value","structureListEditor.removeButton.label":"Remove","structureTable.addButton.label":"Add columns","structureTable.removeButton.label":"Remove","fieldPicker.saveButton.label":"Select Fields for","fieldPicker.saveButton.modal.label":"Save and continue","fieldPicker.resetButton.label":"Reset ","fieldPicker.filter.label":"Filter:","fieldPicker.fieldColumn.label":"Field name","fieldPicker.schemaColumn.label":"Schema name","fieldPicker.dataTypeColumn.label":"Data type","fieldPicker.integer.label":"integer","fieldPicker.double.label":"double","fieldPicker.string.label":"string","fieldPicker.date.label":"date","fieldPicker.time.label":"time","fieldPicker.timestamp.label":"timestamp","flyout.applyButton.label":"OK","flyout.rejectButton.label":"Cancel","propertiesEdit.closeButton.label":"Close","propertiesEdit.applyButton.label":"Save","propertiesEdit.rejectButton.label":"Cancel","propertiesEdit.revertButton.label":"Revert","propertiesEdit.resizeButton.expand.label":"Expand","propertiesEdit.resizeButton.contract.label":"Contract","properties.revert.message":"Click Revert to go back to the previous screen or click Close to exit the pane. Then try your operation again.","properties.close.message":"Click Close to exit the pane. Then try your operation again.","properties.support.message":"If the problem persists, contact support.","properties.unexpected.message":"Oops, the pane didn't load.","table.search.header":"View in tables","table.search.placeholder":"Find in column {column_name}","table.search.label":"Search in {table_name} table","summary.longTable.placeholder":"More than ten fields...","alerts.tab.title":"Alerts","title.editor.label":"edit title","title.editor.helpButton.label":"help","table.summary.error":"There are {errorMsgCount} error cells. ","table.summary.warning":"There are {warningMsgCount} warning cells. ","control.summary.error":"There are {errorMsgCount} parameters with errors. ","control.summary.warning":"There are {warningMsgCount} parameters with warnings. ","control.summary.error.warning":"There are {errorMsgCount} parameters with errors and {warningMsgCount} parameters with warnings.","required.error":"You must enter a value for {label}.","datetime.format.error":"Invalid {role}. Format should be {format}.","invalid.field.error":"Invalid {label}, field not found in data set.","invalid.number.error":"Number is not valid.","expression.validate.label":"Validate","expression.validating.label":"Validating","expression.builder.title":"Expression Builder","expression.builder.icon.description":"launch expression builder","expression.builder.label":"Expression","expression.fields.table.label":"Fields table","expression.values.table.label":"Values table","expression.fields.empty.table.label":"No fields found","expression.values.empty.table.label":"No values found","expression.functions.table.label":"Functions table","expression.fields.dropdown":"Fields","expression.fields.title":"Fields","expression.values.title":"Values","expression.field.column":"Field","expression.field.column.description":"","expression.storage.column":"Storage","expression.value.column":"Value","expression.value.column.description":"","expression.function.column":"Function","expression.return.column":"Return","expression.recently.used.column":"Item","expression.field.tab":"Fields","expression.functions.tab":"Functions","expression.recently.used":"Recently Used","expression.all.functions":"All Functions","expression.min.label":"Min","expression.minimize.label":"Minimize","expression.max.label":"Max","expression.maximize.label":"Maximize","toggle.on.label":"On","toggle.off.label":"Off","passwordShow.tooltip":"Show password","passwordHide.tooltip":"Hide password","expression.no.functions":"No functions found.","multi.selected.row.label":"rows selected.","multi.selected.row.action":"Changing a value in this row will change the value in all allowed selected rows.","datetimefield.format.error.message":"Invalid format object provided. Check input definitions.","datepickerRangeStart.default.label":"Start","datepickerRangeEnd.default.label":"End","editorform.group.type.error":"(Unknown group type '{group.groupType()}')","moveable.table.button.top":"Move to top","moveable.table.button.up":"Move up","moveable.table.button.down":"Move down","moveable.table.button.bottom":"Move to bottom","list.table.label":"Values","dropdown.tooltip.openMenu":"Open menu","dropdown.tooltip.closeMenu":"Close menu","dropdown.tooltip.clear.all":"Clear all","dropdown.tooltip.clear.selection":"Clear selection","truncate.long.string.error":"These values exceed the display limit of {truncate_limit} characters and can't be edited.","properties.label":"{label} Properties","properties.error.label":"Error in properties","readonlytable.edit.button.label":"Edit","toggletext.icon.description":"{toggletext_label} Icon","multiselect.dropdown.empty.label":"None selected","multiselect.dropdown.options.selected.label":"options selected","virtualizedTable.header.checkbox.label":"Select all {header_checkbox_label}","virtualizedTable.row.checkbox.label":"Select row {row_index} from {table_label}","properties.empty.table.text":'To begin, click "{button_label}"',"label.indicator.required":"(required)","label.indicator.optional":"(optional)"};function R(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 o,i=r._getPrototypeOf(e);if(t){var l=r._getPrototypeOf(this).constructor;o=Reflect.construct(i,arguments,l)}else o=i.apply(this,arguments);return r._possibleConstructorReturn(this,o)}}var C=function(e){r._inherits(l,e);var i=R(l);function l(){return t._classCallCheck(this,l),i.apply(this,arguments)}return t._createClass(l,[{key:"render",value:function(){var e=this,r=this.props.tooltipText,i=this.props.truncatedRef;"object"!==t._typeof(this.props.tooltipText)&&(r=String(this.props.tooltipText)),this.props.content&&this.props.content.type===a.Checkbox&&this.tooltipRef&&this.tooltipRef.firstChild&&(i=this.tooltipRef.firstChild.lastChild);var l=m.default.createElement("div",{className:"properties-tooltips"},r);return m.default.createElement("div",{className:"properties-truncated-tooltip"},m.default.createElement(u,{id:"properties",tip:l,direction:"bottom",className:"properties-tooltips",disable:!o.has_1(this.props,"disabled")||this.props.disabled,showToolTipIfTruncated:!0,truncatedRef:i},m.default.createElement("div",{ref:function(t){return e.tooltipRef=t}},this.props.content)))}}]),l}(m.default.Component),E=C,T=o._baseAssignValue,k=n._baseForOwn,I=n._baseIteratee;var S=function(e,t){var r={};return t=I(t),k(e,(function(e,o,i){T(r,o,t(e,o,i))})),r},_=o._baseDifference,x=o._baseFlatten,O=n._baseIteratee,N=o._baseRest,H=o.isArrayLikeObject_1,M=o.last_1,A=N((function(e,t){var r=M(t);return H(r)&&(r=void 0),H(e)?_(e,x(t,1,H,!0),O(r)):[]}));function D(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 o,i=r._getPrototypeOf(e);if(t){var l=r._getPrototypeOf(this).constructor;o=Reflect.construct(i,arguments,l)}else o=i.apply(this,arguments);return r._possibleConstructorReturn(this,o)}}var z=function(i){r._inherits(s,i);var l=D(s);function s(e,i){var a;return t._classCallCheck(this,s),(a=l.call(this,e,i)).state={rowCount:a.props.rowCount,columns:a.props.columns,columnResized:!1},a.virtualizedTableRef=m.default.createRef(),a.lastChecked=o.isEmpty_1(e.rowsSelected)?null:e.rowsSelected.slice(-1).pop(),a.isOverSelectOption=!1,a.mouseEventCalled=!1,a.keyBoardEventCalled=!1,a.cellRenderer=a.cellRenderer.bind(r._assertThisInitialized(a)),a.selectAll=a.selectAll.bind(r._assertThisInitialized(a)),a.headerRowRenderer=a.headerRowRenderer.bind(r._assertThisInitialized(a)),a.headerColRenderer=a.headerColRenderer.bind(r._assertThisInitialized(a)),a.onRowClick=a.onRowClick.bind(r._assertThisInitialized(a)),a.overSelectOption=a.overSelectOption.bind(r._assertThisInitialized(a)),a.resizeColumn=a.resizeColumn.bind(r._assertThisInitialized(a)),a.uuid=h.v4(),a}return t._createClass(s,[{key:"componentDidUpdate",value:function(){"function"==typeof this.props.rowHeight&&this.recomputeRowHeights()}},{key:"onRowClick",value:function(e,t,r){if("bx--select-option"===e.target.className)e.stopPropagation();else{var o=!this.isRowSelected(t.originalRowIndex);"function"==typeof this.props.setRowsSelected&&(this.props.setRowsSelected({index:r,originalRowIndex:t.originalRowIndex,selected:o,isOverSelectOption:this.isOverSelectOption,selectMultipleRows:!!e.shiftKey&&e.shiftKey,lastCheckedRow:null===this.lastChecked?0:this.lastChecked},e),this.lastChecked=t.index)}}},{key:"onRowDoubleClick",value:function(e,t,r){this.props.onRowDoubleClick&&this.props.onRowDoubleClick(e,t,r)}},{key:"getCheckboxLabelColumnIndex",value:function(e){for(var t=0;t<e.length;t++)if("index"!==e[t].operation)return t;return 0}},{key:"getColumnIndex",value:function(e,t){return e.findIndex((function(e){return e.key===t}))}},{key:"getColumnWiseDeltas",value:function(e,t){var r={};if(e.length>0){e.sort((function(e,t){return e.width-t.width}));for(var o=t,i=0;i<e.length;i++){var l=e.slice(i).reduce((function(e,t){return e+t.width}),0),s=Math.round(e[i].width*o/l);e[i].headerLabel.length>0&&e[i].width-s<n.MINIMUM_COLUMN_WIDTH?s=e[i].width-n.MINIMUM_COLUMN_WIDTH:e[i].width-s<n.MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL&&(s=e[i].width-n.MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL),o-=s,r[e[i].key]=s}if(o>0)return S(r,(function(){return 0}))}return r}},{key:"isRowSelected",value:function(e){return!!this.props.rowsSelected&&this.props.rowsSelected.indexOf(e)>-1}},{key:"isLastColumn",value:function(e){var t=this.getColumnIndex(this.props.columns,e)===this.props.columns.length-1;return t}},{key:"selectAll",value:function(e){this.props.setAllRowsSelected(e)}},{key:"cellRenderer",value:function(e){var t=e.cellData;return null==t?"":t}},{key:"cellRendererHTML",value:function(e){var t=e.cellData;return null==t?"":m.default.createElement("div",{dangerouslySetInnerHTML:{__html:t}})}},{key:"recomputeRowHeights",value:function(e){this.virtualizedTableRef&&this.virtualizedTableRef.current&&this.virtualizedTableRef.current.recomputeRowHeights(e)}},{key:"headerRowRenderer",value:function(e,t){var r=t.className,o=t.columns,i=t.style,l=void 0===this.props.columns||0===this.props.columns.length?0:this.getCheckboxLabelColumnIndex(this.props.columns),s=void 0===this.props.columns||0===this.props.columns.length?"":this.props.columns[l].headerLabel,d=this.props.intl.formatMessage({id:"virtualizedTable.header.checkbox.label",defaultMessage:g["virtualizedTable.header.checkbox.label"]},{header_checkbox_label:s}),c=this.props.selectable&&this.props.rowSelection!==n.ROW_SELECTION.SINGLE?m.default.createElement("div",{role:"checkbox","aria-checked":this.props.checkedAll,className:"properties-vt-header-checkbox"},m.default.createElement(a.Checkbox,{id:"properties-vt-hd-cb-".concat(this.uuid,"-").concat(e),onChange:this.selectAll,checked:this.props.checkedAll,labelText:d,hideLabel:!0})):"";return m.default.createElement("div",{className:r,"data-role":"properties-header-row",role:"row",style:i},c,o)}},{key:"headerColRenderer",value:function(e){var t=this,r=e.columnData,i=e.dataKey,l=e.disableSort,s=e.label;e.sortBy,e.sortDirection;var a=null;if(void 0!==this.props.sortColumns[i]){var d=null;switch(this.props.sortColumns[i]){case n.SORT_DIRECTION.ASC:d=m.default.createElement(p.ArrowUp16,{disabled:this.props.tableState===n.STATES.DISABLED});break;case n.SORT_DIRECTION.DESC:d=m.default.createElement(p.ArrowDown16,{disabled:this.props.tableState===n.STATES.DISABLED});break;default:d=m.default.createElement(p.ArrowsVertical16,{disabled:this.props.tableState===n.STATES.DISABLED})}a=m.default.createElement("span",{className:"properties-ft-column-sort-icon"},d)}var c=o.isEmpty_1(r.description)?null:m.default.createElement("div",{className:"properties-vt-info-icon-tip"},m.default.createElement(u,{id:"properties-tooltip-info",tip:r.description,direction:"bottom",className:"properties-tooltips",showToolTipOnClick:!0},m.default.createElement(p.Information16,{className:"properties-vt-info-icon"}))),h=r.resizable&&!this.isLastColumn(i)?m.default.createElement(w.default,{axis:"x",defaultClassName:"properties-vt-header-resize",defaultClassNameDragging:"properties-vt-header-resize-active",onDrag:function(e,r){var o=r.deltaX;t.resizeColumn({dataKey:i,deltaX:o})},position:{x:0},zIndex:999},m.default.createElement("div",{role:"button",tabIndex:"0","aria-label":"Resize column"})):"",f="string"==typeof s?m.default.createElement("span",null,s):s,b=m.default.createElement("div",{className:"properties-vt-label-tip-icon"},m.default.createElement(E,{tooltipText:r.headerLabel,content:f,disabled:r.disabled}),c);return m.default.createElement("div",{"data-id":"properties-vt-header-".concat(i),className:n.classNames({"properties-vt-column-with-resize":""!==h,"properties-vt-column-without-resize":""===h})},m.default.createElement("div",{className:n.classNames("properties-vt-column properties-tooltips-container",{"sort-column-active":i===this.props.sortBy})},b,!1===l&&a),h)}},{key:"resizeColumn",value:function(e){var t=this,r=e.dataKey,i=e.deltaX;this.setState((function(e){var l=e.columns,s=t.getColumnIndex(l,r),a=l.slice(s+1).filter((function(e){return!e.staticWidth})).filter((function(e){return!(i>=0)||(e.headerLabel.length>0?e.width>n.MINIMUM_COLUMN_WIDTH:e.width>n.MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL)})),d=t.getColumnWiseDeltas(a,i),c=Object.keys(d),p=Object.values(d).every((function(e){return 0===e}));return l[s].width+i>n.MINIMUM_COLUMN_WIDTH&&!o.isEmpty_1(d)&&!p&&(l[s].width+=i,c.forEach((function(e){var t=l.findIndex((function(t){return t.key===e}));l[t].width-=d[e]}))),{columnResized:!0,columns:l}}))}},{key:"overSelectOption",value:function(e){"mouseenter"!==e.type||this.keyBoardEventCalled?"mouseleave"===e.type&&this.mouseEventCalled?(this.mouseEventCalled=!1,this.isOverSelectOption=!this.isOverSelectOption):"focus"!==e.type||this.mouseEventCalled?"blur"===e.type&&this.keyBoardEventCalled&&(this.keyBoardEventCalled=!1,this.isOverSelectOption=!this.isOverSelectOption):(this.keyBoardEventCalled=!0,this.isOverSelectOption=!this.isOverSelectOption):(this.mouseEventCalled=!0,this.isOverSelectOption=!this.isOverSelectOption)}},{key:"rowRenderer",value:function(e,t){var r=this,o=t.className,i=t.columns,l=t.index,s=t.key,d=t.rowData,c=t.style,p="",u=!1,h="boolean"==typeof d.disabled&&d.disabled;if("function"==typeof this.props.rowHeight&&0===this.props.rowHeight({index:l}))return null;if(this.props.selectable){var f=this.isRowSelected(d.originalRowIndex);if(u=this.props.selectable&&f,this.props.rowSelection!==n.ROW_SELECTION.SINGLE){var b=this.props.intl.formatMessage({id:"virtualizedTable.row.checkbox.label",defaultMessage:g["virtualizedTable.row.checkbox.label"]},{row_index:l+1,table_label:this.props.tableLabel?this.props.tableLabel:""});p=m.default.createElement("div",{className:"properties-vt-row-checkbox",role:"gridcell",onMouseEnter:function(e){return r.overSelectOption(e)},onMouseLeave:function(e){return r.overSelectOption(e)},onFocus:function(e){return r.overSelectOption(e)},onBlur:function(e){return r.overSelectOption(e)},onKeyDown:function(e){"Space"!==e.code&&"Enter"!==e.code||r.onRowClick(e,d,l)}},m.default.createElement(a.Checkbox,{id:"properties-vt-row-cb-".concat(this.uuid,"-").concat(e,"-").concat(l),key:"properties-vt-row-cb-".concat(e,"-").concat(l),labelText:b,hideLabel:!0,checked:f,disabled:h}))}}if(this.props.summaryTable&&(p=m.default.createElement("div",{className:"properties-vt-row-checkbox"})),!0===d.loading)return m.default.createElement("div",{className:o,key:s,"data-role":"properties-loading-row",role:"row",style:c},m.default.createElement(a.Loading,{className:"properties-vt-small-loading",small:!0,withOverlay:!1}));var v=parseInt(c.width,10)+"px",w=Object.assign({},c,{width:v});return m.default.createElement("div",{style:{},key:s,className:"properties-vt-double-click",onDoubleClick:function(e){return r.onRowDoubleClick(e,d.rowKey,l)}},m.default.createElement("div",{className:n.classNames(o,{"properties-vt-row-selected":u},{"properties-vt-row-disabled":h},{"properties-vt-row-non-interactive":!this.props.selectable}),"data-role":"properties-data-row",role:"row",style:w,onMouseDown:function(e){return r.onRowClick(e,d,l)}},p,i))}},{key:"render",value:function(){var t=this;return m.default.createElement("div",{className:"properties-vt"},m.default.createElement("div",{className:n.classNames("properties-vt-autosizer",{"properties-vt-single-selection":this.props.rowSelection&&this.props.rowSelection===n.ROW_SELECTION.SINGLE,"properties-light-disabled":!this.props.light})},m.default.createElement(d.AutoSizer,null,(function(r){var o=r.height,i=r.width;return m.default.createElement(d.Table,{ref:t.virtualizedTableRef,width:i||500,height:t.props.tableHeight||o||2e3,className:"properties-autosized-vt","aria-label":t.props.tableLabel?t.props.tableLabel:"",disableHeader:t.props.disableHeader,headerClassName:"properties-autosized-vt-header",headerHeight:32,headerRowRenderer:t.headerRowRenderer.bind(t,t.props.scrollKey),onHeaderClick:t.props.onHeaderClick,rowClassName:"properties-vt-row-class",rowHeight:t.props.rowHeight?t.props.rowHeight:32,rowCount:t.state.rowCount,rowGetter:t.props.rowGetter,rowRenderer:t.rowRenderer.bind(t,t.props.scrollKey),scrollToIndex:t.props.scrollToIndex,scrollToAlignment:t.props.scrollToAlignment,sort:t.props.onSort,sortDirection:t.props.sortDirection,tabIndex:-1},t.state.columns.map((function(r){return m.default.createElement(d.Column,e._extends({key:r.key,label:r.label,dataKey:r.key,width:r.width,columnData:r,disableSort:void 0===t.props.sortColumns[r.key],cellRenderer:r.isHTML?t.cellRendererHTML:t.cellRenderer,headerRenderer:t.headerColRenderer},r.minWidth&&{minWidth:r.minWidth}))})))}))))}}],[{key:"getDerivedStateFromProps",value:function(e,t){var r={};e.rowCount!==t.rowCount&&(r.rowCount=e.rowCount);var i=t.columns.reduce((function(e,t){return t.width+e}),0)!==e.columns.reduce((function(e,t){return t.width+e}),0);return t.columnResized&&o.isEmpty_1(A(e.columns,t.columns,"headerLabel"))&&!i||(r.columns=e.columns),r}}]),s}(m.default.Component);z.defaultProps={disableHeader:!1};var L=l.injectIntl(z);function P(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return W(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return W(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var o=0,i=function(){};return{s:i,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,s=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return s=e.done,e},e:function(e){a=!0,l=e},f:function(){try{s||null==r.return||r.return()}finally{if(a)throw l}}}}function W(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}function B(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 o,i=r._getPrototypeOf(e);if(t){var l=r._getPrototypeOf(this).constructor;o=Reflect.construct(i,arguments,l)}else o=i.apply(this,arguments);return r._possibleConstructorReturn(this,o)}}var j=function(i){r._inherits(s,i);var l=B(s);function s(e){var o;t._classCallCheck(this,s);var i={};if(void 0!==(o=l.call(this,e)).props.sortable)for(var a=0;a<o.props.sortable.length;a++){i[o.props.sortable[a]]=n.SORT_DIRECTION.NOT_SORTED}return o.state={checkedAllRows:!1,columnSortDir:i,currentSortColumn:"",tableWidth:0,tableHeight:0,rows:void 0!==e.rows?e.rows:5.5,dynamicHeight:null},o.rowHeight=o.rowHeight.bind(r._assertThisInitialized(o)),o.rowGetter=o.rowGetter.bind(r._assertThisInitialized(o)),o.getOriginalRowIndex=o.getOriginalRowIndex.bind(r._assertThisInitialized(o)),o.getLastChildPropertyIdRow=o.getLastChildPropertyIdRow.bind(r._assertThisInitialized(o)),o.calculateColumnWidths=o.calculateColumnWidths.bind(r._assertThisInitialized(o)),o.handleFilterChange=o.handleFilterChange.bind(r._assertThisInitialized(o)),o.onSort=o.onSort.bind(r._assertThisInitialized(o)),o.sortHeaderClick=o.sortHeaderClick.bind(r._assertThisInitialized(o)),o._updateTableWidth=o._updateTableWidth.bind(r._assertThisInitialized(o)),o._adjustTableHeight=o._adjustTableHeight.bind(r._assertThisInitialized(o)),o.handleCheckedRow=o.handleCheckedRow.bind(r._assertThisInitialized(o)),o.handleCheckedAllRows=o.handleCheckedAllRows.bind(r._assertThisInitialized(o)),o.handleCheckedMultipleRows=o.handleCheckedMultipleRows.bind(r._assertThisInitialized(o)),o}return t._createClass(s,[{key:"componentDidMount",value:function(){this._adjustTableHeight(),window.addEventListener("resize",this._adjustTableHeight),this.tableNode=v.default.findDOMNode(this.refs.table)}},{key:"componentDidUpdate",value:function(e,t){e.rows===this.props.rows&&e.columns===this.props.columns&&e.noAutoSize===this.props.noAutoSize||this._adjustTableHeight(),this.props.selectedRows&&!o.isEmpty_1(this.props.data)&&this.setCheckedAll(this.props.selectedRows),this.tableNode=v.default.findDOMNode(this.refs.table)}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this._adjustTableHeight)}},{key:"onSort",value:function(e){var t=e.sortBy;if(this.props.onSort){var r={column:t,direction:this.state.columnSortDir[t]===n.SORT_DIRECTION.ASC?n.SORT_DIRECTION.DESC:n.SORT_DIRECTION.ASC};this.props.onSort(r)}}},{key:"getOriginalRowIndex",value:function(e,t){var r=t;return e.columns&&o.has_1(e.columns[0],"content.props.children.props.propertyId.propertyId")?r=this.getLastChildPropertyIdRow(e.columns[0].content.props.children.props.propertyId,t):e.columns&&o.has_1(e.columns[0],"content.props.children.props.propertyId.index")?r=e.columns[0].content.props.children.props.propertyId.index:e.columns&&o.has_1(e.columns[0],"content.props.children.props.propertyId.row")?r=e.columns[0].content.props.children.props.propertyId.row:"number"==typeof e.rowKey&&(r=parseInt(e.rowKey,10)),r}},{key:"getLastChildPropertyIdRow",value:function(e,t){return void 0!==e.propertyId?this.getLastChildPropertyIdRow(e.propertyId):void 0!==e.row?e.row:t}},{key:"setCheckedAll",value:function(e){for(var t=!0,r=0;r<this.props.data.length;r++){var o=this.props.data[r],i=this.getOriginalRowIndex(o,r);if(e.indexOf(i)<0){t=!1;break}}this.state.checkedAllRows!==t&&this.setState({checkedAllRows:t})}},{key:"calculateColumnWidths",value:function(e,t){var r=t-12;this.props.rowSelection!==n.ROW_SELECTION.SINGLE&&(r-=40);var o,i=e.length,l=0,s=P(e);try{for(s.s();!(o=s.n()).done;){var a=o.value;a.width&&("string"==typeof a.width&&a.width.includes("px")?(r-=parseInt(a.width,10),i--):l=Math.max(l,a.width))}}catch(e){s.e(e)}finally{s.f()}var d,c=[],p=Math.floor(r/i),u=[],h=0,f=P(e);try{for(f.s();!(d=f.n()).done;){var b=d.value;b.width&&!isNaN(b.width)?(u.push(b.width/l),h+=b.width/l):u.push(null)}}catch(e){f.e(e)}finally{f.f()}for(var m=r/h,v=0,w=0;w<e.length;w++){var y=e[w];if(y.width)if("string"==typeof y.width&&y.width.includes("px"))c.push(Math.floor(parseInt(y.width,10))+"px"),v+=parseInt(y.width,10);else{var g=Math.floor(u[w]*m);c.push(g+"px"),v+=g}else c.push(p),v+=p}var R=t;if(this.props.rowSelection!==n.ROW_SELECTION.SINGLE&&(R-=40),v<R){var C=parseInt(c[0],10);c[0]=C+R-v+"px"}return c}},{key:"_updateTableWidth",value:function(e,t){this.state.tableWidth!==Math.floor(e-2)&&this.setState({tableWidth:Math.floor(e-2)})}},{key:"_adjustTableHeight",value:function(){if(!this.props.noAutoSize){var e=this.state.tableHeight,t=this.state.dynamicHeight,r=n.REM_ROW_HEIGHT+n.REM_HEADER_HEIGHT;if(Array.isArray(this.props.data)&&this.props.data.length<this.state.rows)e=n.REM_ROW_HEIGHT*this.props.data.length+n.REM_HEADER_HEIGHT+(this.props.selectedEditRow?r:0)+"rem";else if(this.state.rows>0)e=n.REM_ROW_HEIGHT*this.state.rows+n.REM_HEADER_HEIGHT+(this.props.selectedEditRow?r:0)+"rem";else if(0===this.state.rows)e=n.REM_HEADER_HEIGHT+"rem";else if(-1===this.state.rows&&this.flexibleTable){var o=void 0!==this.flexibleTableHeader?v.default.findDOMNode(this.flexibleTableHeader).getBoundingClientRect().height:0,i=this.findPropertyNodeHeight(this.flexibleTable,"properties-wf-children"),l=this.findPropertyNodeHeight(this.flexibleTable,"properties-primary-tab-panel");if(0===i&&0===l)e="100vh",t=-1;else{var s=0!==i?i:l;e="calc(".concat(s-o-50,"px - 3.5rem)"),t=s-o-50-56}}e!==this.state.tableHeight&&this.setState({tableHeight:e,dynamicHeight:t})}}},{key:"findPropertyNodeHeight",value:function(e,t){if(e&&e.parentNode&&e.parentNode.className&&e.parentNode.className.includes(t)){var r=v.default.findDOMNode(e.parentNode).getBoundingClientRect();return r?r.height:0}return e&&e.parentNode?this.findPropertyNodeHeight(e.parentNode,t):0}},{key:"sortHeaderClick",value:function(e){var t=e.dataKey,r=this.state.columnSortDir;void 0!==r[t]&&(Object.keys(r).forEach((function(e){e!==t&&(r[e]=n.SORT_DIRECTION.NOT_SORTED)})),r[t]=r[t]===n.SORT_DIRECTION.ASC?n.SORT_DIRECTION.DESC:n.SORT_DIRECTION.ASC,this.setState({columnSortDir:r,currentSortColumn:t}))}},{key:"handleFilterChange",value:function(e){this.props.onFilter&&this.props.onFilter(e.target.value)}},{key:"handleCheckedAllRows",value:function(e){var t=[],r=this.props.data;if(e){t=Array.from(this.props.selectedRows);for(var o=0;o<r.length;o++){var i=this.getOriginalRowIndex(r[o],o);t.push(i)}}t=Array.from(new Set(t)),this.props.updateRowSelections(t),this.setState({checkedAllRows:e})}},{key:"handleCheckedMultipleRows",value:function(e,t,r){var o,i=this.props.selectedRows?this.props.selectedRows:[];return o=e<t?Array.from({length:t-e+1},(function(t,r){return e+r})):Array.from({length:e-t+1},(function(e,r){return t+r})),i=i.filter((function(e){return!o.includes(e)})),r&&(i=i.concat(o)),i}},{key:"handleCheckedRow",value:function(e,t){var r=e.originalRowIndex,o=e.index,i=e.selected,l=e.isOverSelectOption;if(!this.props.data[o].disabled&&"function"==typeof this.props.updateRowSelections)if(l){var s=this.props.selectedRows?this.props.selectedRows:[];e.selectMultipleRows?(s=this.handleCheckedMultipleRows(e.lastCheckedRow,o,i),this.setCheckedAll(s)):i?(s=s.concat(r),this.setCheckedAll(s)):s&&(s=s.filter((function(e){return e!==r})),this.setState({checkedAllRows:!1})),s.sort((function(e,t){return e-t})),this.props.updateRowSelections(s)}else this.props.rowSelection===n.ROW_SELECTION.SINGLE&&this.props.updateRowSelections(e.index,t,this.props.data[e.index].rowKey)}},{key:"generateTableHeaderRow",value:function(e){for(var r=[],o="",i=0;i<this.props.columns.length;i++){var l=this.props.columns[i];void 0!==this.props.filterable&&this.props.filterable[0]===l.key&&(o=l.label);var s=Math.abs(parseInt(e[i],10)),a=void 0;"object"===t._typeof(l.label)?a=l.label.props.labelText:"string"==typeof l.label&&(a=l.label),r.push({key:l.key,label:l.label,width:s,description:l.description,headerLabel:a,resizable:l.resizable,operation:l.operation,staticWidth:!!l.staticWidth&&l.staticWidth})}return{headers:r,searchLabel:o}}},{key:"rowGetter",value:function(e){var t=e.index,r=this.props.data[t],o=this.getOriginalRowIndex(r,t),i={};if(r.columns)for(var l=0;l<r.columns.length;l++){var s=r.columns[l];i[s.column]=s.content}return Object.assign({},i,{loading:!1,index:t,originalRowIndex:o,rowKey:void 0!==r.rowKey?r.rowKey:this.props.scrollKey+"-row-"+t,disabled:r.disabled})}},{key:"rowHeight",value:function(e){return e.index,n.ROW_HEIGHT}},{key:"render",value:function(){var t=this,r=this.state.tableWidth,i=this.calculateColumnWidths(this.props.columns,r),l=this.generateTableHeaderRow(i),s=l.headers,d=l.searchLabel,c=this.props.tableState===n.STATES.DISABLED,p=null;if(void 0!==this.props.filterable&&0!==this.props.filterable.length){var u=void 0!==this.props.searchPlaceholder?this.props.searchPlaceholder:this.props.intl.formatMessage({id:"table.search.placeholder",defaultMessage:g["table.search.placeholder"]},{column_name:d}),h=this.props.intl.formatMessage({id:"table.search.label",defaultMessage:g["table.search.label"]},{table_name:this.props.tableLabel});p=m.default.createElement("div",{className:n.classNames("properties-ft-search-container",{disabled:c})},m.default.createElement(a.Search,{className:"properties-ft-search-text",placeholder:u,onChange:this.handleFilterChange,disabled:c,size:"sm",labelText:h,light:this.props.light}))}var f=-1;void 0!==this.props.scrollToRow&&null!==this.props.scrollToRow&&(f=this.props.scrollToRow);var b={};this.props.noAutoSize||(b={height:this.state.tableHeight});var v=this.props.showHeader?"properties-ft-container-absolute ":"properties-ft-container-absolute-noheader ",w=this.props.messageInfo?v:v+n.STATES.INFO,R=p||this.props.topRightPanel?m.default.createElement("div",{className:"properties-ft-table-header",ref:function(e){return t.flexibleTableHeader=e}},p,this.props.topRightPanel):null,C=o.isEmpty_1(this.props.data)?m.default.createElement("div",{className:"properties-ft-empty-table"},this.props.emptyTablePlaceholder):null,E=n.classNames("properties-ft-control-container",{"properties-light-disabled":!this.props.light}),T=0,k=2*n.REM_HEADER_HEIGHT,I=k*n.ONE_REM_HEIGHT;-1!==this.state.rows&&this.state.tableHeight?T=(parseInt(this.state.tableHeight,10)-(this.props.selectedEditRow?k:0))*n.ONE_REM_HEIGHT:-1===this.state.rows&&this.state.dynamicHeight&&-1!==this.state.dynamicHeight&&(T=this.state.dynamicHeight-(this.props.selectedEditRow?I:0));return m.default.createElement("div",{"data-id":"properties-ft-"+this.props.scrollKey,className:E,ref:function(e){return t.flexibleTable=e}},R,m.default.createElement("div",{className:"properties-ft-container-panel"},m.default.createElement(y.default,{handleWidth:!0,onResize:this._updateTableWidth},m.default.createElement("div",{className:n.classNames("properties-ft-container-wrapper",this.props.messageInfo?this.props.messageInfo.type:""),style:b},m.default.createElement("div",{className:w},this.props.selectedEditRow,m.default.createElement(L,e._extends({tableLabel:this.props.tableLabel,tableHeight:T,columns:s,onHeaderClick:this.sortHeaderClick,rowCount:this.props.data.length,rowHeight:this.rowHeight,rowGetter:this.rowGetter,summaryTable:this.props.summaryTable,selectable:void 0!==this.props.updateRowSelections,rowSelection:this.props.rowSelection,disableHeader:!this.props.showHeader,onRowDoubleClick:this.props.onRowDoubleClick,rowsSelected:this.props.selectedRows,checkedAll:this.state.checkedAllRows,setRowsSelected:this.handleCheckedRow,setAllRowsSelected:this.handleCheckedAllRows,scrollKey:this.props.scrollKey,onSort:this.onSort,sortBy:this.state.currentSortColumn,sortColumns:this.state.columnSortDir,sortDirection:this.state.columnSortDir[this.state.currentSortColumn],tableState:this.props.tableState,light:this.props.light},-1!==f&&{scrollToIndex:f,scrollToAlignment:"center"})))))),C)}}]),s}(m.default.Component);j.defaultProps={showHeader:!0,light:!0,emptyTablePlaceholder:""};var F=l.injectIntl(j);exports.FlexibleTable=F,exports.TruncatedContentTooltip=E,exports.defaultMessages=g;
|
|
2
|
-
//# sourceMappingURL=flexible-table-
|
|
1
|
+
"use strict";var e=require("./extends-1b35a664.js"),t=require("./createClass-826941b3.js"),r=require("./getPrototypeOf-1e698126.js"),o=require("./isArrayLikeObject-0cd02b77.js"),i=require("react"),l=require("react-intl"),s=require("react-dom"),a=require("carbon-components-react"),n=require("./_baseIteratee-7fb1949c.js"),c=require("react-virtualized"),d=require("react-draggable"),p=require("@carbon/icons-react"),u=require("./lib/tooltip.js"),h=require("uuid"),f=require("react-resize-detector");function b(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=b(i),v=b(s),w=b(d),y=b(f),g={"subPanel.button.tooltip":"Edit","structureListEditor.addButton.label":"Add value","structureListEditor.removeButton.label":"Remove","structureTable.addButton.label":"Add columns","structureTable.removeButton.label":"Remove","fieldPicker.saveButton.label":"Select Fields for","fieldPicker.saveButton.modal.label":"Save and continue","fieldPicker.resetButton.label":"Reset ","fieldPicker.filter.label":"Filter:","fieldPicker.fieldColumn.label":"Field name","fieldPicker.schemaColumn.label":"Schema name","fieldPicker.dataTypeColumn.label":"Data type","fieldPicker.integer.label":"integer","fieldPicker.double.label":"double","fieldPicker.string.label":"string","fieldPicker.date.label":"date","fieldPicker.time.label":"time","fieldPicker.timestamp.label":"timestamp","flyout.applyButton.label":"OK","flyout.rejectButton.label":"Cancel","propertiesEdit.closeButton.label":"Close","propertiesEdit.applyButton.label":"Save","propertiesEdit.rejectButton.label":"Cancel","propertiesEdit.revertButton.label":"Revert","propertiesEdit.resizeButton.expand.label":"Expand","propertiesEdit.resizeButton.contract.label":"Contract","properties.revert.message":"Click Revert to go back to the previous screen or click Close to exit the pane. Then try your operation again.","properties.close.message":"Click Close to exit the pane. Then try your operation again.","properties.support.message":"If the problem persists, contact support.","properties.unexpected.message":"Oops, the pane didn't load.","table.search.header":"View in tables","table.search.placeholder":"Find in column {column_name}","table.search.label":"Search in {table_name} table","summary.longTable.placeholder":"More than ten fields...","alerts.tab.title":"Alerts","title.editor.label":"edit title","title.editor.helpButton.label":"help","table.summary.error":"There are {errorMsgCount} error cells. ","table.summary.warning":"There are {warningMsgCount} warning cells. ","control.summary.error":"There are {errorMsgCount} parameters with errors. ","control.summary.warning":"There are {warningMsgCount} parameters with warnings. ","control.summary.error.warning":"There are {errorMsgCount} parameters with errors and {warningMsgCount} parameters with warnings.","required.error":"You must enter a value for {label}.","datetime.format.error":"Invalid {role}. Format should be {format}.","invalid.field.error":"Invalid {label}, field not found in data set.","invalid.number.error":"Number is not valid.","expression.validate.label":"Validate","expression.validating.label":"Validating","expression.builder.title":"Expression Builder","expression.builder.icon.description":"launch expression builder","expression.builder.label":"Expression","expression.fields.table.label":"Fields table","expression.values.table.label":"Values table","expression.fields.empty.table.label":"No fields found","expression.values.empty.table.label":"No values found","expression.functions.table.label":"Functions table","expression.fields.dropdown":"Fields","expression.fields.title":"Fields","expression.values.title":"Values","expression.field.column":"Field","expression.field.column.description":"","expression.storage.column":"Storage","expression.value.column":"Value","expression.value.column.description":"","expression.function.column":"Function","expression.return.column":"Return","expression.recently.used.column":"Item","expression.field.tab":"Fields","expression.functions.tab":"Functions","expression.recently.used":"Recently Used","expression.all.functions":"All Functions","expression.min.label":"Min","expression.minimize.label":"Minimize","expression.max.label":"Max","expression.maximize.label":"Maximize","toggle.on.label":"On","toggle.off.label":"Off","passwordShow.tooltip":"Show password","passwordHide.tooltip":"Hide password","expression.no.functions":"No functions found.","multi.selected.row.label":"rows selected.","multi.selected.row.action":"Changing a value in this row will change the value in all allowed selected rows.","datetimefield.format.error.message":"Invalid format object provided. Check input definitions.","datepickerRangeStart.default.label":"Start","datepickerRangeEnd.default.label":"End","editorform.group.type.error":"(Unknown group type '{group.groupType()}')","moveable.table.button.top":"Move to top","moveable.table.button.up":"Move up","moveable.table.button.down":"Move down","moveable.table.button.bottom":"Move to bottom","list.table.label":"Values","dropdown.tooltip.openMenu":"Open menu","dropdown.tooltip.closeMenu":"Close menu","dropdown.tooltip.clear.all":"Clear all","dropdown.tooltip.clear.selection":"Clear selection","truncate.long.string.error":"These values exceed the display limit of {truncate_limit} characters and can't be edited.","properties.label":"{label} Properties","properties.error.label":"Error in properties","readonlytable.edit.button.label":"Edit","toggletext.icon.description":"{toggletext_label} Icon","multiselect.dropdown.empty.label":"None selected","multiselect.dropdown.options.selected.label":"options selected","virtualizedTable.header.checkbox.label":"Select all {header_checkbox_label}","virtualizedTable.row.checkbox.label":"Select row {row_index} from {table_label}","properties.empty.table.text":'To begin, click "{button_label}"',"label.indicator.required":"(required)","label.indicator.optional":"(optional)"};function R(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 o,i=r._getPrototypeOf(e);if(t){var l=r._getPrototypeOf(this).constructor;o=Reflect.construct(i,arguments,l)}else o=i.apply(this,arguments);return r._possibleConstructorReturn(this,o)}}var C=function(e){r._inherits(l,e);var i=R(l);function l(){return t._classCallCheck(this,l),i.apply(this,arguments)}return t._createClass(l,[{key:"render",value:function(){var e=this,r=this.props.tooltipText,i=this.props.truncatedRef;"object"!==t._typeof(this.props.tooltipText)&&(r=String(this.props.tooltipText)),this.props.content&&this.props.content.type===a.Checkbox&&this.tooltipRef&&this.tooltipRef.firstChild&&(i=this.tooltipRef.firstChild.lastChild);var l=m.default.createElement("div",{className:"properties-tooltips"},r);return m.default.createElement("div",{className:"properties-truncated-tooltip"},m.default.createElement(u,{id:"properties",tip:l,direction:"bottom",className:"properties-tooltips",disable:!o.has_1(this.props,"disabled")||this.props.disabled,showToolTipIfTruncated:!0,truncatedRef:i},m.default.createElement("div",{ref:function(t){return e.tooltipRef=t}},this.props.content)))}}]),l}(m.default.Component),E=C,T=o._baseAssignValue,k=n._baseForOwn,I=n._baseIteratee;var _=function(e,t){var r={};return t=I(t),k(e,(function(e,o,i){T(r,o,t(e,o,i))})),r},S=o._baseDifference,x=o._baseFlatten,O=n._baseIteratee,N=o._baseRest,H=o.isArrayLikeObject_1,M=o.last_1,A=N((function(e,t){var r=M(t);return H(r)&&(r=void 0),H(e)?S(e,x(t,1,H,!0),O(r)):[]}));function D(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 o,i=r._getPrototypeOf(e);if(t){var l=r._getPrototypeOf(this).constructor;o=Reflect.construct(i,arguments,l)}else o=i.apply(this,arguments);return r._possibleConstructorReturn(this,o)}}var z=function(i){r._inherits(s,i);var l=D(s);function s(e,i){var a;return t._classCallCheck(this,s),(a=l.call(this,e,i)).state={rowCount:a.props.rowCount,columns:a.props.columns,columnResized:!1},a.virtualizedTableRef=m.default.createRef(),a.lastChecked=o.isEmpty_1(e.rowsSelected)?null:e.rowsSelected.slice(-1).pop(),a.isOverSelectOption=!1,a.mouseEventCalled=!1,a.keyBoardEventCalled=!1,a.cellRenderer=a.cellRenderer.bind(r._assertThisInitialized(a)),a.selectAll=a.selectAll.bind(r._assertThisInitialized(a)),a.headerRowRenderer=a.headerRowRenderer.bind(r._assertThisInitialized(a)),a.headerColRenderer=a.headerColRenderer.bind(r._assertThisInitialized(a)),a.onRowClick=a.onRowClick.bind(r._assertThisInitialized(a)),a.overSelectOption=a.overSelectOption.bind(r._assertThisInitialized(a)),a.resizeColumn=a.resizeColumn.bind(r._assertThisInitialized(a)),a.uuid=h.v4(),a}return t._createClass(s,[{key:"componentDidUpdate",value:function(){"function"==typeof this.props.rowHeight&&this.recomputeRowHeights()}},{key:"onRowClick",value:function(e,t,r){if("bx--select-option"===e.target.className)e.stopPropagation();else{var o=!this.isRowSelected(t.originalRowIndex);"function"==typeof this.props.setRowsSelected&&(this.props.setRowsSelected({index:r,originalRowIndex:t.originalRowIndex,selected:o,isOverSelectOption:this.isOverSelectOption,selectMultipleRows:!!e.shiftKey&&e.shiftKey,lastCheckedRow:null===this.lastChecked?0:this.lastChecked},e),this.lastChecked=t.index)}}},{key:"onRowDoubleClick",value:function(e,t,r){this.props.onRowDoubleClick&&this.props.onRowDoubleClick(e,t,r)}},{key:"getCheckboxLabelColumnIndex",value:function(e){for(var t=0;t<e.length;t++)if("index"!==e[t].operation)return t;return 0}},{key:"getColumnIndex",value:function(e,t){return e.findIndex((function(e){return e.key===t}))}},{key:"getColumnWiseDeltas",value:function(e,t){var r={};if(e.length>0){e.sort((function(e,t){return e.width-t.width}));for(var o=t,i=0;i<e.length;i++){var l=e.slice(i).reduce((function(e,t){return e+t.width}),0),s=Math.round(e[i].width*o/l);e[i].headerLabel.length>0&&e[i].width-s<n.MINIMUM_COLUMN_WIDTH?s=e[i].width-n.MINIMUM_COLUMN_WIDTH:e[i].width-s<n.MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL&&(s=e[i].width-n.MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL),o-=s,r[e[i].key]=s}if(o>0)return _(r,(function(){return 0}))}return r}},{key:"isRowSelected",value:function(e){return!!this.props.rowsSelected&&this.props.rowsSelected.indexOf(e)>-1}},{key:"isLastColumn",value:function(e){var t=this.getColumnIndex(this.props.columns,e)===this.props.columns.length-1;return t}},{key:"selectAll",value:function(e){this.props.setAllRowsSelected(e)}},{key:"cellRenderer",value:function(e){var t=e.cellData;return null==t?"":t}},{key:"cellRendererHTML",value:function(e){var t=e.cellData;return null==t?"":m.default.createElement("div",{dangerouslySetInnerHTML:{__html:t}})}},{key:"recomputeRowHeights",value:function(e){this.virtualizedTableRef&&this.virtualizedTableRef.current&&this.virtualizedTableRef.current.recomputeRowHeights(e)}},{key:"headerRowRenderer",value:function(e,t){var r=t.className,o=t.columns,i=t.style,l=void 0===this.props.columns||0===this.props.columns.length?0:this.getCheckboxLabelColumnIndex(this.props.columns),s=void 0===this.props.columns||0===this.props.columns.length?"":this.props.columns[l].headerLabel,c=this.props.intl.formatMessage({id:"virtualizedTable.header.checkbox.label",defaultMessage:g["virtualizedTable.header.checkbox.label"]},{header_checkbox_label:s}),d=this.props.selectable&&this.props.rowSelection!==n.ROW_SELECTION.SINGLE?m.default.createElement("div",{role:"checkbox","aria-checked":this.props.checkedAll,className:"properties-vt-header-checkbox"},m.default.createElement(a.Checkbox,{id:"properties-vt-hd-cb-".concat(this.uuid,"-").concat(e),onChange:this.selectAll,checked:this.props.checkedAll,labelText:c,hideLabel:!0})):"";return m.default.createElement("div",{className:r,"data-role":"properties-header-row",role:"row",style:i},d,o)}},{key:"headerColRenderer",value:function(e){var t=this,r=e.columnData,i=e.dataKey,l=e.disableSort,s=e.label;e.sortBy,e.sortDirection;var a=null;if(void 0!==this.props.sortColumns[i]){var c=null;switch(this.props.sortColumns[i]){case n.SORT_DIRECTION.ASC:c=m.default.createElement(p.ArrowUp16,{disabled:this.props.tableState===n.STATES.DISABLED});break;case n.SORT_DIRECTION.DESC:c=m.default.createElement(p.ArrowDown16,{disabled:this.props.tableState===n.STATES.DISABLED});break;default:c=m.default.createElement(p.ArrowsVertical16,{disabled:this.props.tableState===n.STATES.DISABLED})}a=m.default.createElement("span",{className:"properties-ft-column-sort-icon"},c)}var d=o.isEmpty_1(r.description)?null:m.default.createElement("div",{className:"properties-vt-info-icon-tip"},m.default.createElement(u,{id:"properties-tooltip-info",tip:r.description,direction:"bottom",className:"properties-tooltips",showToolTipOnClick:!0},m.default.createElement(p.Information16,{className:"properties-vt-info-icon"}))),h=r.resizable&&!this.isLastColumn(i)?m.default.createElement(w.default,{axis:"x",defaultClassName:"properties-vt-header-resize",defaultClassNameDragging:"properties-vt-header-resize-active",onDrag:function(e,r){var o=r.deltaX;t.resizeColumn({dataKey:i,deltaX:o})},position:{x:0},zIndex:999},m.default.createElement("div",{role:"button",tabIndex:"0","aria-label":"Resize column"})):"",f="string"==typeof s?m.default.createElement("span",null,s):s,b=m.default.createElement("div",{className:"properties-vt-label-tip-icon"},m.default.createElement(E,{tooltipText:r.headerLabel,content:f,disabled:r.disabled}),d);return m.default.createElement("div",{"data-id":"properties-vt-header-".concat(i),className:n.classNames({"properties-vt-column-with-resize":""!==h,"properties-vt-column-without-resize":""===h})},m.default.createElement("div",{className:n.classNames("properties-vt-column properties-tooltips-container",{"sort-column-active":i===this.props.sortBy})},b,!1===l&&a),h)}},{key:"resizeColumn",value:function(e){var t=this,r=e.dataKey,i=e.deltaX;this.setState((function(e){var l=e.columns,s=t.getColumnIndex(l,r),a=l.slice(s+1).filter((function(e){return!e.staticWidth})).filter((function(e){return!(i>=0)||(e.headerLabel.length>0?e.width>n.MINIMUM_COLUMN_WIDTH:e.width>n.MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL)})),c=t.getColumnWiseDeltas(a,i),d=Object.keys(c),p=Object.values(c).every((function(e){return 0===e}));return l[s].width+i>n.MINIMUM_COLUMN_WIDTH&&!o.isEmpty_1(c)&&!p&&(l[s].width+=i,d.forEach((function(e){var t=l.findIndex((function(t){return t.key===e}));l[t].width-=c[e]}))),{columnResized:!0,columns:l}}))}},{key:"overSelectOption",value:function(e){"mouseenter"!==e.type||this.keyBoardEventCalled?"mouseleave"===e.type&&this.mouseEventCalled?(this.mouseEventCalled=!1,this.isOverSelectOption=!this.isOverSelectOption):"focus"!==e.type||this.mouseEventCalled?"blur"===e.type&&this.keyBoardEventCalled&&(this.keyBoardEventCalled=!1,this.isOverSelectOption=!this.isOverSelectOption):(this.keyBoardEventCalled=!0,this.isOverSelectOption=!this.isOverSelectOption):(this.mouseEventCalled=!0,this.isOverSelectOption=!this.isOverSelectOption)}},{key:"rowRenderer",value:function(e,t){var r=this,o=t.className,i=t.columns,l=t.index,s=t.key,c=t.rowData,d=t.style,p="",u=!1,h="boolean"==typeof c.disabled&&c.disabled;if("function"==typeof this.props.rowHeight&&0===this.props.rowHeight({index:l}))return null;if(this.props.selectable){var f=this.isRowSelected(c.originalRowIndex);if(u=this.props.selectable&&f,this.props.rowSelection!==n.ROW_SELECTION.SINGLE){var b=this.props.intl.formatMessage({id:"virtualizedTable.row.checkbox.label",defaultMessage:g["virtualizedTable.row.checkbox.label"]},{row_index:l+1,table_label:this.props.tableLabel?this.props.tableLabel:""});p=m.default.createElement("div",{className:"properties-vt-row-checkbox",role:"gridcell",onMouseEnter:function(e){return r.overSelectOption(e)},onMouseLeave:function(e){return r.overSelectOption(e)},onFocus:function(e){return r.overSelectOption(e)},onBlur:function(e){return r.overSelectOption(e)},onKeyDown:function(e){"Space"!==e.code&&"Enter"!==e.code||r.onRowClick(e,c,l)}},m.default.createElement(a.Checkbox,{id:"properties-vt-row-cb-".concat(this.uuid,"-").concat(e,"-").concat(l),key:"properties-vt-row-cb-".concat(e,"-").concat(l),labelText:b,hideLabel:!0,checked:f,disabled:h}))}}if(this.props.summaryTable&&(p=m.default.createElement("div",{className:"properties-vt-row-checkbox"})),!0===c.loading)return m.default.createElement("div",{className:o,key:s,"data-role":"properties-loading-row",role:"row",style:d},m.default.createElement(a.Loading,{className:"properties-vt-small-loading",small:!0,withOverlay:!1}));var v=parseInt(d.width,10)+"px",w=Object.assign({},d,{width:v});return m.default.createElement("div",{style:{},key:s,className:"properties-vt-double-click",onDoubleClick:function(e){return r.onRowDoubleClick(e,c.rowKey,l)}},m.default.createElement("div",{className:n.classNames(o,{"properties-vt-row-selected":u},{"properties-vt-row-disabled":h},{"properties-vt-row-non-interactive":!this.props.selectable}),"data-role":"properties-data-row",role:"row",style:w,onMouseDown:function(e){return r.onRowClick(e,c,l)}},p,i))}},{key:"render",value:function(){var t=this;return m.default.createElement("div",{className:"properties-vt"},m.default.createElement("div",{className:n.classNames("properties-vt-autosizer",{"properties-vt-single-selection":this.props.rowSelection&&this.props.rowSelection===n.ROW_SELECTION.SINGLE,"properties-light-disabled":!this.props.light})},m.default.createElement(c.AutoSizer,null,(function(r){var o=r.height,i=r.width;return m.default.createElement(c.Table,{ref:t.virtualizedTableRef,width:i||500,height:t.props.tableHeight||o||2e3,className:"properties-autosized-vt","aria-label":t.props.tableLabel?t.props.tableLabel:"",disableHeader:t.props.disableHeader,headerClassName:"properties-autosized-vt-header",headerHeight:32,headerRowRenderer:t.headerRowRenderer.bind(t,t.props.scrollKey),onHeaderClick:t.props.onHeaderClick,rowClassName:"properties-vt-row-class",rowHeight:t.props.rowHeight?t.props.rowHeight:32,rowCount:t.state.rowCount,rowGetter:t.props.rowGetter,rowRenderer:t.rowRenderer.bind(t,t.props.scrollKey),scrollToIndex:t.props.scrollToIndex,scrollToAlignment:t.props.scrollToAlignment,sort:t.props.onSort,sortDirection:t.props.sortDirection,tabIndex:-1},t.state.columns.map((function(r){return m.default.createElement(c.Column,e._extends({key:r.key,label:r.label,dataKey:r.key,width:r.width,columnData:r,disableSort:void 0===t.props.sortColumns[r.key],cellRenderer:r.isHTML?t.cellRendererHTML:t.cellRenderer,headerRenderer:t.headerColRenderer},r.minWidth&&{minWidth:r.minWidth}))})))}))))}}],[{key:"getDerivedStateFromProps",value:function(e,t){var r={};e.rowCount!==t.rowCount&&(r.rowCount=e.rowCount);var i=t.columns.reduce((function(e,t){return t.width+e}),0)!==e.columns.reduce((function(e,t){return t.width+e}),0);return t.columnResized&&o.isEmpty_1(A(e.columns,t.columns,"headerLabel"))&&!i||(r.columns=e.columns),r}}]),s}(m.default.Component);z.defaultProps={disableHeader:!1};var L=l.injectIntl(z);function P(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return W(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return W(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var o=0,i=function(){};return{s:i,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,s=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return s=e.done,e},e:function(e){a=!0,l=e},f:function(){try{s||null==r.return||r.return()}finally{if(a)throw l}}}}function W(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}function B(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 o,i=r._getPrototypeOf(e);if(t){var l=r._getPrototypeOf(this).constructor;o=Reflect.construct(i,arguments,l)}else o=i.apply(this,arguments);return r._possibleConstructorReturn(this,o)}}var j=function(i){r._inherits(s,i);var l=B(s);function s(e){var o;t._classCallCheck(this,s);var i={};if(void 0!==(o=l.call(this,e)).props.sortable)for(var a=0;a<o.props.sortable.length;a++){i[o.props.sortable[a]]=n.SORT_DIRECTION.NOT_SORTED}return o.state={checkedAllRows:!1,columnSortDir:i,currentSortColumn:"",tableWidth:0,tableHeight:0,rows:void 0!==e.rows?e.rows:5.5,dynamicHeight:null},o.rowHeight=o.rowHeight.bind(r._assertThisInitialized(o)),o.rowGetter=o.rowGetter.bind(r._assertThisInitialized(o)),o.getOriginalRowIndex=o.getOriginalRowIndex.bind(r._assertThisInitialized(o)),o.getLastChildPropertyIdRow=o.getLastChildPropertyIdRow.bind(r._assertThisInitialized(o)),o.calculateColumnWidths=o.calculateColumnWidths.bind(r._assertThisInitialized(o)),o.handleFilterChange=o.handleFilterChange.bind(r._assertThisInitialized(o)),o.onSort=o.onSort.bind(r._assertThisInitialized(o)),o.sortHeaderClick=o.sortHeaderClick.bind(r._assertThisInitialized(o)),o._updateTableWidth=o._updateTableWidth.bind(r._assertThisInitialized(o)),o._adjustTableHeight=o._adjustTableHeight.bind(r._assertThisInitialized(o)),o.handleCheckedRow=o.handleCheckedRow.bind(r._assertThisInitialized(o)),o.handleCheckedAllRows=o.handleCheckedAllRows.bind(r._assertThisInitialized(o)),o.handleCheckedMultipleRows=o.handleCheckedMultipleRows.bind(r._assertThisInitialized(o)),o}return t._createClass(s,[{key:"componentDidMount",value:function(){this._adjustTableHeight(),window.addEventListener("resize",this._adjustTableHeight),this.tableNode=v.default.findDOMNode(this.refs.table)}},{key:"componentDidUpdate",value:function(e,t){e.rows===this.props.rows&&e.columns===this.props.columns&&e.noAutoSize===this.props.noAutoSize||this._adjustTableHeight(),this.props.selectedRows&&!o.isEmpty_1(this.props.data)&&this.setCheckedAll(this.props.selectedRows),this.tableNode=v.default.findDOMNode(this.refs.table)}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this._adjustTableHeight)}},{key:"onSort",value:function(e){var t=e.sortBy;if(this.props.onSort){var r={column:t,direction:this.state.columnSortDir[t]===n.SORT_DIRECTION.ASC?n.SORT_DIRECTION.DESC:n.SORT_DIRECTION.ASC};this.props.onSort(r)}}},{key:"getOriginalRowIndex",value:function(e,t){var r=t;return e.columns&&o.has_1(e.columns[0],"content.props.children.props.propertyId.propertyId")?r=this.getLastChildPropertyIdRow(e.columns[0].content.props.children.props.propertyId,t):e.columns&&o.has_1(e.columns[0],"content.props.children.props.propertyId.index")?r=e.columns[0].content.props.children.props.propertyId.index:e.columns&&o.has_1(e.columns[0],"content.props.children.props.propertyId.row")?r=e.columns[0].content.props.children.props.propertyId.row:"number"==typeof e.rowKey&&(r=parseInt(e.rowKey,10)),r}},{key:"getLastChildPropertyIdRow",value:function(e,t){return void 0!==e.propertyId?this.getLastChildPropertyIdRow(e.propertyId):void 0!==e.row?e.row:t}},{key:"setCheckedAll",value:function(e){for(var t=!0,r=0;r<this.props.data.length;r++){var o=this.props.data[r],i=this.getOriginalRowIndex(o,r);if(e.indexOf(i)<0){t=!1;break}}this.state.checkedAllRows!==t&&this.setState({checkedAllRows:t})}},{key:"calculateColumnWidths",value:function(e,t){var r=t-12;this.props.rowSelection!==n.ROW_SELECTION.SINGLE&&(r-=40);var o,i=e.length,l=0,s=P(e);try{for(s.s();!(o=s.n()).done;){var a=o.value;a.width&&("string"==typeof a.width&&a.width.includes("px")?(r-=parseInt(a.width,10),i--):l=Math.max(l,a.width))}}catch(e){s.e(e)}finally{s.f()}var c,d=[],p=Math.floor(r/i),u=[],h=0,f=P(e);try{for(f.s();!(c=f.n()).done;){var b=c.value;b.width&&!isNaN(b.width)?(u.push(b.width/l),h+=b.width/l):u.push(null)}}catch(e){f.e(e)}finally{f.f()}for(var m=r/h,v=0,w=0;w<e.length;w++){var y=e[w];if(y.width)if("string"==typeof y.width&&y.width.includes("px"))d.push(Math.floor(parseInt(y.width,10))+"px"),v+=parseInt(y.width,10);else{var g=Math.floor(u[w]*m);d.push(g+"px"),v+=g}else d.push(p),v+=p}var R=t;if(this.props.rowSelection!==n.ROW_SELECTION.SINGLE&&(R-=40),v<R){var C=parseInt(d[0],10);d[0]=C+R-v+"px"}return d}},{key:"_updateTableWidth",value:function(e,t){this.state.tableWidth!==Math.floor(e-2)&&this.setState({tableWidth:Math.floor(e-2)})}},{key:"_adjustTableHeight",value:function(){if(!this.props.noAutoSize){var e=this.state.tableHeight,t=this.state.dynamicHeight,r=n.REM_ROW_HEIGHT+n.REM_HEADER_HEIGHT;if(Array.isArray(this.props.data)&&this.props.data.length<this.state.rows)e=(n.REM_ROW_HEIGHT*this.props.data.length+n.REM_HEADER_HEIGHT+(this.props.selectedEditRow?r:0))*n.ONE_REM_HEIGHT;else if(this.state.rows>0)e=(n.REM_ROW_HEIGHT*this.state.rows+n.REM_HEADER_HEIGHT+(this.props.selectedEditRow?r:0))*n.ONE_REM_HEIGHT;else if(0===this.state.rows)e=n.REM_HEADER_HEIGHT*n.ONE_REM_HEIGHT;else if(-1===this.state.rows&&this.flexibleTable){var o=void 0!==this.flexibleTableHeader?v.default.findDOMNode(this.flexibleTableHeader).getBoundingClientRect().height:0,i=this.findPropertyNodeHeight(this.flexibleTable,"properties-wf-children"),l=this.findPropertyNodeHeight(this.flexibleTable,"properties-primary-tab-panel");if(0===i&&0===l)e="100vh",t=-1;else{var s=0!==i?i:l;e="calc(".concat(s-o-50,"px - ").concat(3.5*n.ONE_REM_HEIGHT,"px)"),t=s-o-50-56}}e!==this.state.tableHeight&&this.setState({tableHeight:e,dynamicHeight:t})}}},{key:"findPropertyNodeHeight",value:function(e,t){if(e&&e.parentNode&&e.parentNode.className&&e.parentNode.className.includes(t)){var r=v.default.findDOMNode(e.parentNode).getBoundingClientRect();return r?r.height:0}return e&&e.parentNode?this.findPropertyNodeHeight(e.parentNode,t):0}},{key:"sortHeaderClick",value:function(e){var t=e.dataKey,r=this.state.columnSortDir;void 0!==r[t]&&(Object.keys(r).forEach((function(e){e!==t&&(r[e]=n.SORT_DIRECTION.NOT_SORTED)})),r[t]=r[t]===n.SORT_DIRECTION.ASC?n.SORT_DIRECTION.DESC:n.SORT_DIRECTION.ASC,this.setState({columnSortDir:r,currentSortColumn:t}))}},{key:"handleFilterChange",value:function(e){this.props.onFilter&&this.props.onFilter(e.target.value)}},{key:"handleCheckedAllRows",value:function(e){var t=[],r=this.props.data;if(e){t=Array.from(this.props.selectedRows);for(var o=0;o<r.length;o++){var i=this.getOriginalRowIndex(r[o],o);t.push(i)}}t=Array.from(new Set(t)),this.props.updateRowSelections(t),this.setState({checkedAllRows:e})}},{key:"handleCheckedMultipleRows",value:function(e,t,r){var o,i=this.props.selectedRows?this.props.selectedRows:[];return o=e<t?Array.from({length:t-e+1},(function(t,r){return e+r})):Array.from({length:e-t+1},(function(e,r){return t+r})),i=i.filter((function(e){return!o.includes(e)})),r&&(i=i.concat(o)),i}},{key:"handleCheckedRow",value:function(e,t){var r=e.originalRowIndex,o=e.index,i=e.selected,l=e.isOverSelectOption;if(!this.props.data[o].disabled&&"function"==typeof this.props.updateRowSelections)if(l){var s=this.props.selectedRows?this.props.selectedRows:[];e.selectMultipleRows?(s=this.handleCheckedMultipleRows(e.lastCheckedRow,o,i),this.setCheckedAll(s)):i?(s=s.concat(r),this.setCheckedAll(s)):s&&(s=s.filter((function(e){return e!==r})),this.setState({checkedAllRows:!1})),s.sort((function(e,t){return e-t})),this.props.updateRowSelections(s)}else this.props.rowSelection===n.ROW_SELECTION.SINGLE&&this.props.updateRowSelections(e.index,t,this.props.data[e.index].rowKey)}},{key:"generateTableHeaderRow",value:function(e){for(var r=[],o="",i=0;i<this.props.columns.length;i++){var l=this.props.columns[i];void 0!==this.props.filterable&&this.props.filterable[0]===l.key&&(o=l.label);var s=Math.abs(parseInt(e[i],10)),a=void 0;"object"===t._typeof(l.label)?a=l.label.props.labelText:"string"==typeof l.label&&(a=l.label),r.push({key:l.key,label:l.label,width:s,description:l.description,headerLabel:a,resizable:l.resizable,operation:l.operation,staticWidth:!!l.staticWidth&&l.staticWidth})}return{headers:r,searchLabel:o}}},{key:"rowGetter",value:function(e){var t=e.index,r=this.props.data[t],o=this.getOriginalRowIndex(r,t),i={};if(r.columns)for(var l=0;l<r.columns.length;l++){var s=r.columns[l];i[s.column]=s.content}return Object.assign({},i,{loading:!1,index:t,originalRowIndex:o,rowKey:void 0!==r.rowKey?r.rowKey:this.props.scrollKey+"-row-"+t,disabled:r.disabled})}},{key:"rowHeight",value:function(e){return e.index,n.ROW_HEIGHT}},{key:"render",value:function(){var t=this,r=this.state.tableWidth,i=this.calculateColumnWidths(this.props.columns,r),l=this.generateTableHeaderRow(i),s=l.headers,c=l.searchLabel,d=this.props.tableState===n.STATES.DISABLED,p=null;if(void 0!==this.props.filterable&&0!==this.props.filterable.length){var u=void 0!==this.props.searchPlaceholder?this.props.searchPlaceholder:this.props.intl.formatMessage({id:"table.search.placeholder",defaultMessage:g["table.search.placeholder"]},{column_name:c}),h=this.props.intl.formatMessage({id:"table.search.label",defaultMessage:g["table.search.label"]},{table_name:this.props.tableLabel});p=m.default.createElement("div",{className:n.classNames("properties-ft-search-container",{disabled:d})},m.default.createElement(a.Search,{className:"properties-ft-search-text",placeholder:u,onChange:this.handleFilterChange,disabled:d,size:"sm",labelText:h,light:this.props.light}))}var f=-1;void 0!==this.props.scrollToRow&&null!==this.props.scrollToRow&&(f=this.props.scrollToRow);var b={};this.props.noAutoSize||(b={height:this.state.tableHeight});var v=this.props.showHeader?"properties-ft-container-absolute ":"properties-ft-container-absolute-noheader ",w=this.props.messageInfo?v:v+n.STATES.INFO,R=p||this.props.topRightPanel?m.default.createElement("div",{className:"properties-ft-table-header",ref:function(e){return t.flexibleTableHeader=e}},p,this.props.topRightPanel):null,C=o.isEmpty_1(this.props.data)?m.default.createElement("div",{className:"properties-ft-empty-table"},this.props.emptyTablePlaceholder):null,E=n.classNames("properties-ft-control-container",{"properties-light-disabled":!this.props.light}),T=0,k=2*n.REM_HEADER_HEIGHT,I=k*n.ONE_REM_HEIGHT;-1!==this.state.rows&&this.state.tableHeight?T=parseInt(this.state.tableHeight,10)-(this.props.selectedEditRow?k:0):-1===this.state.rows&&this.state.dynamicHeight&&-1!==this.state.dynamicHeight&&(T=this.state.dynamicHeight-(this.props.selectedEditRow?I:0));return m.default.createElement("div",{"data-id":"properties-ft-"+this.props.scrollKey,className:E,ref:function(e){return t.flexibleTable=e}},R,m.default.createElement("div",{className:"properties-ft-container-panel"},m.default.createElement(y.default,{handleWidth:!0,onResize:this._updateTableWidth},m.default.createElement("div",{className:n.classNames("properties-ft-container-wrapper",this.props.messageInfo?this.props.messageInfo.type:""),style:b},m.default.createElement("div",{className:w},this.props.selectedEditRow,m.default.createElement(L,e._extends({tableLabel:this.props.tableLabel,tableHeight:T,columns:s,onHeaderClick:this.sortHeaderClick,rowCount:this.props.data.length,rowHeight:this.rowHeight,rowGetter:this.rowGetter,summaryTable:this.props.summaryTable,selectable:void 0!==this.props.updateRowSelections,rowSelection:this.props.rowSelection,disableHeader:!this.props.showHeader,onRowDoubleClick:this.props.onRowDoubleClick,rowsSelected:this.props.selectedRows,checkedAll:this.state.checkedAllRows,setRowsSelected:this.handleCheckedRow,setAllRowsSelected:this.handleCheckedAllRows,scrollKey:this.props.scrollKey,onSort:this.onSort,sortBy:this.state.currentSortColumn,sortColumns:this.state.columnSortDir,sortDirection:this.state.columnSortDir[this.state.currentSortColumn],tableState:this.props.tableState,light:this.props.light},-1!==f&&{scrollToIndex:f,scrollToAlignment:"center"})))))),C)}}]),s}(m.default.Component);j.defaultProps={showHeader:!0,light:!0,emptyTablePlaceholder:""};var G=l.injectIntl(j);exports.FlexibleTable=G,exports.TruncatedContentTooltip=E,exports.defaultMessages=g;
|
|
2
|
+
//# sourceMappingURL=flexible-table-11488132.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flexible-table-11488132.js","sources":["../src/common-properties/components/truncated-content-tooltip/truncated-content-tooltip.jsx","../src/common-properties/components/truncated-content-tooltip/index.js","../node_modules/lodash/mapValues.js","../node_modules/lodash/differenceBy.js","../src/common-properties/components/virtualized-table/virtualized-table.jsx","../src/common-properties/components/flexible-table/flexible-table.jsx"],"sourcesContent":["/*\n * Copyright 2017-2023 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\";\nimport Tooltip from \"./../../../tooltip/tooltip.jsx\";\nimport { has } from \"lodash\";\nimport { Checkbox } from \"carbon-components-react\";\n\n// Reusable component to show tooltip if the content is truncated\nexport default class TruncatedContentTooltip extends React.Component {\n\n\trender() {\n\t\tlet tooltipText = this.props.tooltipText;\n\t\tlet truncatedRef = this.props.truncatedRef;\n\t\tif (typeof this.props.tooltipText !== \"object\") {\n\t\t\ttooltipText = String(this.props.tooltipText);\n\t\t}\n\t\tif (this.props.content && this.props.content.type === Checkbox && this.tooltipRef && this.tooltipRef.firstChild) {\n\t\t\ttruncatedRef = this.tooltipRef.firstChild.lastChild; // checkbox label is in div -> label -> span\n\t\t}\n\t\tconst tooltip = (\n\t\t\t<div className=\"properties-tooltips\">\n\t\t\t\t{tooltipText}\n\t\t\t</div>\n\t\t);\n\t\treturn (\n\t\t\t<div className=\"properties-truncated-tooltip\">\n\t\t\t\t<Tooltip\n\t\t\t\t\tid=\"properties\"\n\t\t\t\t\ttip={tooltip}\n\t\t\t\t\tdirection=\"bottom\"\n\t\t\t\t\tclassName=\"properties-tooltips\"\n\t\t\t\t\tdisable={has(this.props, \"disabled\") ? this.props.disabled : true}\n\t\t\t\t\tshowToolTipIfTruncated\n\t\t\t\t\ttruncatedRef={truncatedRef}\n\t\t\t\t>\n\t\t\t\t\t<div ref={(ref) => (this.tooltipRef = ref)}>\n\t\t\t\t\t\t{this.props.content}\n\t\t\t\t\t</div>\n\t\t\t\t</Tooltip>\n\t\t\t</div>\n\t\t);\n\t}\n}\n\nTruncatedContentTooltip.propTypes = {\n\tcontent: PropTypes.element,\n\ttruncatedRef: PropTypes.object,\n\ttooltipText: PropTypes.oneOfType([\n\t\tPropTypes.string.isRequired,\n\t\tPropTypes.object.isRequired,\n\t\tPropTypes.number.isRequired,\n\t\tPropTypes.bool.isRequired,\n\t\tPropTypes.array.isRequired\n\t]),\n\tdisabled: PropTypes.bool\n};\n","/*\n * Copyright 2017-2023 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 TruncatedContentTooltip from \"./truncated-content-tooltip.jsx\";\nexport default TruncatedContentTooltip;\n","var baseAssignValue = require('./_baseAssignValue'),\n baseForOwn = require('./_baseForOwn'),\n baseIteratee = require('./_baseIteratee');\n\n/**\n * Creates an object with the same keys as `object` and values generated\n * by running each own enumerable string keyed property of `object` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapKeys\n * @example\n *\n * var users = {\n * 'fred': { 'user': 'fred', 'age': 40 },\n * 'pebbles': { 'user': 'pebbles', 'age': 1 }\n * };\n *\n * _.mapValues(users, function(o) { return o.age; });\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n *\n * // The `_.property` iteratee shorthand.\n * _.mapValues(users, 'age');\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n */\nfunction mapValues(object, iteratee) {\n var result = {};\n iteratee = baseIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, key, iteratee(value, key, object));\n });\n return result;\n}\n\nmodule.exports = mapValues;\n","var baseDifference = require('./_baseDifference'),\n baseFlatten = require('./_baseFlatten'),\n baseIteratee = require('./_baseIteratee'),\n baseRest = require('./_baseRest'),\n isArrayLikeObject = require('./isArrayLikeObject'),\n last = require('./last');\n\n/**\n * This method is like `_.difference` except that it accepts `iteratee` which\n * is invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * **Note:** Unlike `_.pullAllBy`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\nvar differenceBy = baseRest(function(array, values) {\n var iteratee = last(values);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), baseIteratee(iteratee, 2))\n : [];\n});\n\nmodule.exports = differenceBy;\n","/*\n * Copyright 2017-2023 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 { Column, Table, AutoSizer } from \"react-virtualized\";\nimport Draggable from \"react-draggable\";\nimport { Checkbox, Loading } from \"carbon-components-react\";\nimport { ArrowUp16, ArrowDown16, ArrowsVertical16, Information16 } from \"@carbon/icons-react\";\nimport Tooltip from \"./../../../tooltip/tooltip.jsx\";\nimport TruncatedContentTooltip from \"./../truncated-content-tooltip\";\nimport { SORT_DIRECTION, STATES, ROW_SELECTION, MINIMUM_COLUMN_WIDTH, MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL } from \"./../../constants/constants\";\nimport { injectIntl } from \"react-intl\";\nimport defaultMessages from \"../../../../locales/common-properties/locales/en.json\";\n\nimport { isEmpty, differenceBy, mapValues } from \"lodash\";\nimport classNames from \"classnames\";\n\nimport PropTypes from \"prop-types\";\nimport React from \"react\";\nimport { v4 as uuid4 } from \"uuid\";\n\nclass VirtualizedTable extends React.Component {\n\n\tstatic getDerivedStateFromProps(nextProps, prevState) {\n\t\tconst updatedState = {};\n\t\tif (nextProps.rowCount !== prevState.rowCount) {\n\t\t\tupdatedState.rowCount = nextProps.rowCount;\n\t\t}\n\n\t\tconst prevStateTableWidth = prevState.columns.reduce((totalWidth, column) => column.width + totalWidth, 0);\n\t\tconst nextPropsTableWidth = nextProps.columns.reduce((totalWidth, column) => column.width + totalWidth, 0);\n\t\tconst editorSizeUpdated = (prevStateTableWidth !== nextPropsTableWidth);\n\n\t\t// Get new columns if column label (headerLabel) is different. This is useful when changing \"View in tables\" dropdown in Expression control.\n\t\t// Also when right flyout is expanded/collapsed, width of all columns changes, in this case get new columns with updated widths.\n\t\t// We're not comparing all properties in columns object because width can be different after resizing.\n\t\tif (!prevState.columnResized || !isEmpty(differenceBy(nextProps.columns, prevState.columns, \"headerLabel\")) || editorSizeUpdated) {\n\t\t\tupdatedState.columns = nextProps.columns;\n\t\t}\n\t\treturn (updatedState);\n\t}\n\n\tconstructor(props, context) {\n\t\tsuper(props, context);\n\n\t\tthis.state = {\n\t\t\trowCount: this.props.rowCount,\n\t\t\tcolumns: this.props.columns,\n\t\t\tcolumnResized: false\n\t\t};\n\t\tthis.virtualizedTableRef = React.createRef();\n\t\tthis.lastChecked = isEmpty(props.rowsSelected) ? null : props.rowsSelected.slice(-1).pop();\n\n\t\tthis.isOverSelectOption = false;\n\t\tthis.mouseEventCalled = false;\n\t\tthis.keyBoardEventCalled = false;\n\t\tthis.cellRenderer = this.cellRenderer.bind(this);\n\t\tthis.selectAll = this.selectAll.bind(this);\n\t\tthis.headerRowRenderer = this.headerRowRenderer.bind(this);\n\t\tthis.headerColRenderer = this.headerColRenderer.bind(this);\n\t\tthis.onRowClick = this.onRowClick.bind(this);\n\t\tthis.overSelectOption = this.overSelectOption.bind(this);\n\t\tthis.resizeColumn = this.resizeColumn.bind(this);\n\t\tthis.uuid = uuid4();\n\t}\n\n\tcomponentDidUpdate() {\n\t\t// If the rowHeight prop is a function, the virtualized table doesn't always adjust its\n\t\t// row heights correctly when the table data has changed. So in this case we need\n\t\t// to recompute the row heights.\n\t\tif (typeof this.props.rowHeight === \"function\") {\n\t\t\tthis.recomputeRowHeights();\n\t\t}\n\t}\n\n\t// This is also triggered when clicking on a checkbox\n\tonRowClick(evt, rowData, index) {\n\t\tif (evt.target.className === \"bx--select-option\") {\n\t\t\tevt.stopPropagation(); // stop propagation when selecting dropdown select options within table rows\n\t\t} else {\n\t\t\t// Set selections\n\t\t\tconst selected = !this.isRowSelected(rowData.originalRowIndex);\n\t\t\tif (typeof this.props.setRowsSelected === \"function\") {\n\t\t\t\tthis.props.setRowsSelected({\n\t\t\t\t\t\"index\": index,\n\t\t\t\t\t\"originalRowIndex\": rowData.originalRowIndex,\n\t\t\t\t\t\"selected\": selected,\n\t\t\t\t\t\"isOverSelectOption\": this.isOverSelectOption,\n\t\t\t\t\t\"selectMultipleRows\": evt.shiftKey ? evt.shiftKey : false,\n\t\t\t\t\t\"lastCheckedRow\": this.lastChecked === null ? 0 : this.lastChecked }, evt);\n\n\t\t\t\t// Track lastChecked row for shift key selection\n\t\t\t\tthis.lastChecked = rowData.index;\n\t\t\t}\n\t\t}\n\t}\n\n\tonRowDoubleClick(evt, rowKey, index) {\n\t\tif (this.props.onRowDoubleClick) {\n\t\t\tthis.props.onRowDoubleClick(evt, rowKey, index);\n\t\t}\n\t}\n\n\tgetCheckboxLabelColumnIndex(columns) {\n\t\t// If 1st column is Index, use the next column for labeling\n\t\tfor (let i = 0; i < columns.length; i++) {\n\t\t\tif (columns[i].operation !== \"index\") {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\t\t// Use first column by default\n\t\treturn 0;\n\t}\n\n\tgetColumnIndex(columns, key) {\n\t\tconst index = columns.findIndex((column) => column.key === key);\n\t\treturn index;\n\t}\n\n\t// Returns an object of deltas for every column - {columnKey: individualDelta}\n\tgetColumnWiseDeltas(columns, deltaX) {\n\t\tconst columnWiseDeltas = {};\n\t\tif (columns.length > 0) {\n\t\t\t// sort columns in ascending order of widths because smallest column will reach MINIMUM_COLUMN_WIDTH first\n\t\t\tcolumns.sort((a, b) => a.width - b.width);\n\t\t\tlet totalDelta = deltaX;\n\t\t\t// Finalize individualDelta for 1 column at a time starting from smallest column\n\t\t\t// If individualDelta is greater than maximum allowed delta for the column, set individualDelta = maximum allowed delta until column reaches MINIMUM_COLUMN_WIDTH\n\t\t\t// Total delta will reduce after every iteration\n\t\t\tfor (let i = 0; i < columns.length; i++) {\n\t\t\t\tconst widthOfAllColumns = columns.slice(i).reduce((prev, current) => prev + current.width, 0);\n\t\t\t\tlet individualDelta = Math.round((columns[i].width * totalDelta) / widthOfAllColumns);\n\t\t\t\t// check if individualDelta is greater than the maximum allowed delta for this column\n\t\t\t\tif (columns[i].headerLabel.length > 0 && columns[i].width - individualDelta < MINIMUM_COLUMN_WIDTH) {\n\t\t\t\t\tindividualDelta = columns[i].width - MINIMUM_COLUMN_WIDTH;\n\t\t\t\t} else if (columns[i].width - individualDelta < MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL) {\n\t\t\t\t\tindividualDelta = columns[i].width - MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL;\n\t\t\t\t}\n\t\t\t\ttotalDelta -= individualDelta;\n\t\t\t\tcolumnWiseDeltas[columns[i].key] = individualDelta;\n\t\t\t}\n\t\t\tif (totalDelta > 0) {\n\t\t\t\t// deltaX is greater than maximum allowed delta for all columns.\n\t\t\t\t// Don't allow resizing by setting individualDelta = 0 for ALL columns\n\t\t\t\treturn mapValues(columnWiseDeltas, () => 0);\n\t\t\t}\n\t\t}\n\t\treturn columnWiseDeltas;\n\t}\n\n\tisRowSelected(index) {\n\t\tif (this.props.rowsSelected) {\n\t\t\treturn this.props.rowsSelected.indexOf(index) > -1;\n\t\t}\n\t\treturn false;\n\t}\n\n\tisLastColumn(dataKey) {\n\t\tconst columnIndex = this.getColumnIndex(this.props.columns, dataKey);\n\t\tconst isLastColumn = (columnIndex === (this.props.columns.length - 1));\n\t\treturn isLastColumn;\n\t}\n\n\tselectAll(selected) {\n\t\tthis.props.setAllRowsSelected(selected);\n\t}\n\n\t// Callback responsible for rendering a cell's contents.\n\tcellRenderer({ cellData }) {\n\t\tif (cellData === null || typeof cellData === \"undefined\") {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn cellData;\n\t}\n\n\tcellRendererHTML({ cellData }) {\n\t\tif (cellData === null || typeof cellData === \"undefined\") {\n\t\t\treturn \"\";\n\t\t}\n\t\treturn (<div dangerouslySetInnerHTML={{ __html: cellData }} />);\n\t}\n\n\trecomputeRowHeights(index) {\n\t\tif (this.virtualizedTableRef && this.virtualizedTableRef.current) {\n\t\t\tthis.virtualizedTableRef.current.recomputeRowHeights(index);\n\t\t}\n\t}\n\n\t// Responsible for rendering the table header row given an array of columns.\n\theaderRowRenderer(scrollKey, { className, columns, style }) {\n\t\tconst checkboxLabelColumnIndex = (typeof this.props.columns === \"undefined\" || this.props.columns.length === 0) ? 0 : this.getCheckboxLabelColumnIndex(this.props.columns);\n\t\tconst headerCheckboxLabel = (typeof this.props.columns === \"undefined\" || this.props.columns.length === 0) ? \"\" : this.props.columns[checkboxLabelColumnIndex].headerLabel;\n\t\tconst translatedHeaderCheckboxLabel = this.props.intl.formatMessage(\n\t\t\t{ id: \"virtualizedTable.header.checkbox.label\", defaultMessage: defaultMessages[\"virtualizedTable.header.checkbox.label\"] },\n\t\t\t{ header_checkbox_label: headerCheckboxLabel }\n\t\t);\n\t\tconst checkbox = this.props.selectable && this.props.rowSelection !== ROW_SELECTION.SINGLE\n\t\t\t? (<div role=\"checkbox\" aria-checked={this.props.checkedAll} className=\"properties-vt-header-checkbox\">\n\t\t\t\t<Checkbox\n\t\t\t\t\tid={`properties-vt-hd-cb-${this.uuid}-${scrollKey}`}\n\t\t\t\t\tonChange={this.selectAll}\n\t\t\t\t\tchecked={this.props.checkedAll}\n\t\t\t\t\tlabelText={translatedHeaderCheckboxLabel}\n\t\t\t\t\thideLabel\n\t\t\t\t/>\n\t\t\t</div>)\n\t\t\t: \"\";\n\n\t\treturn (<div className={className} data-role=\"properties-header-row\" role=\"row\" style={style}>\n\t\t\t{checkbox}\n\t\t\t{columns}\n\t\t</div>);\n\t}\n\n\theaderColRenderer({ columnData, dataKey, disableSort, label, sortBy, sortDirection }) {\n\t\tlet sortIcon = null;\n\t\tif (typeof this.props.sortColumns[dataKey] !== \"undefined\") {\n\t\t\tlet type = null;\n\t\t\tswitch (this.props.sortColumns[dataKey]) {\n\t\t\tcase SORT_DIRECTION.ASC:\n\t\t\t\ttype = <ArrowUp16 disabled={this.props.tableState === STATES.DISABLED} />;\n\t\t\t\tbreak;\n\t\t\tcase SORT_DIRECTION.DESC:\n\t\t\t\ttype = <ArrowDown16 disabled={this.props.tableState === STATES.DISABLED} />;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\ttype = <ArrowsVertical16 disabled={this.props.tableState === STATES.DISABLED} />;\n\t\t\t}\n\t\t\tsortIcon = (<span className=\"properties-ft-column-sort-icon\">\n\t\t\t\t{type}\n\t\t\t</span>);\n\t\t}\n\n\t\tconst infoIcon = isEmpty(columnData.description)\n\t\t\t? null\n\t\t\t: (<div className=\"properties-vt-info-icon-tip\">\n\t\t\t\t<Tooltip\n\t\t\t\t\tid=\"properties-tooltip-info\"\n\t\t\t\t\ttip={columnData.description}\n\t\t\t\t\tdirection=\"bottom\"\n\t\t\t\t\tclassName=\"properties-tooltips\"\n\t\t\t\t\tshowToolTipOnClick\n\t\t\t\t>\n\t\t\t\t\t<Information16 className=\"properties-vt-info-icon\" />\n\t\t\t\t</Tooltip>\n\t\t\t</div>);\n\n\t\tconst resizeElem = columnData.resizable && !this.isLastColumn(dataKey)\n\t\t\t? (<Draggable\n\t\t\t\taxis=\"x\"\n\t\t\t\tdefaultClassName=\"properties-vt-header-resize\"\n\t\t\t\tdefaultClassNameDragging=\"properties-vt-header-resize-active\"\n\t\t\t\tonDrag={\n\t\t\t\t\t(evt, { deltaX }) => {\n\t\t\t\t\t\tthis.resizeColumn({ dataKey, deltaX });\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tposition={{ x: 0 }}\n\t\t\t\tzIndex={999}\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\trole=\"button\" tabIndex=\"0\"\n\t\t\t\t\taria-label=\"Resize column\"\n\t\t\t\t/>\n\t\t\t</Draggable>)\n\t\t\t: \"\";\n\t\tconst headerDisplayLabel = typeof label === \"string\" ? (<span>{label}</span>) : label;\n\t\tconst header = (<div className=\"properties-vt-label-tip-icon\">\n\t\t\t<TruncatedContentTooltip\n\t\t\t\ttooltipText={columnData.headerLabel}\n\t\t\t\tcontent={headerDisplayLabel}\n\t\t\t\tdisabled={columnData.disabled}\n\t\t\t/>\n\t\t\t{infoIcon}\n\t\t</div>);\n\t\treturn (\n\t\t\t<div data-id={`properties-vt-header-${dataKey}`}\n\t\t\t\tclassName={classNames({ \"properties-vt-column-with-resize\": resizeElem !== \"\", \"properties-vt-column-without-resize\": resizeElem === \"\" })}\n\t\t\t>\n\t\t\t\t<div className={classNames(\"properties-vt-column properties-tooltips-container\", { \"sort-column-active\": dataKey === this.props.sortBy })}>\n\t\t\t\t\t{header}\n\t\t\t\t\t{disableSort === false && sortIcon}\n\t\t\t\t</div>\n\t\t\t\t{ resizeElem }\n\t\t\t</div>\n\t\t);\n\t}\n\n\t/* Columns are not resizable by default. Host application specifies resizable columns in parameter definition.\n\t* When a column is resized, width of ALL the columns to the right of resized column is adjusted.\n\t* Every column grows/shrinks directly proportional to column width.\n\t* Example: If a column width is reduced by 10px and there are 4 columns on the right of resized column having widths [40, 30, 20, 10],\n\t* Then 10px will be adjusted in 4 columns as - [4px, 3px, 2px, 1px]\n\t* When every column's width reaches MINIMUM_COLUMN_WIDTH (56px), resizing is stopped.\n\t* Special case - For columns without labels, when their width reaches MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL (32px), resizing is stopped.\n\t*/\n\tresizeColumn({ dataKey, deltaX }) {\n\t\tthis.setState((prevState) => {\n\n\t\t\tconst columns = prevState.columns;\n\t\t\t// Calculate number of resizable columns on the right of resized column\n\t\t\tconst resizedColumnIndex = this.getColumnIndex(columns, dataKey);\n\t\t\tconst allColumnsOnRight = columns.slice(resizedColumnIndex + 1);\n\t\t\t// Exclude columns having staticWidth: true\n\t\t\tconst nonStaticColumns = allColumnsOnRight.filter((column) => !column.staticWidth);\n\n\t\t\tconst resizableColumns = nonStaticColumns.filter((column) => {\n\t\t\t\t// When shrinking, get columns having width greater than MINIMUM_COLUMN_WIDTH\n\t\t\t\tif (deltaX >= 0) {\n\t\t\t\t\tif (column.headerLabel.length > 0) {\n\t\t\t\t\t\t// Column with label has min width 56px\n\t\t\t\t\t\treturn (column.width > MINIMUM_COLUMN_WIDTH);\n\t\t\t\t\t}\n\t\t\t\t\t// Column without label has min width 32px\n\t\t\t\t\treturn (column.width > MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL);\n\t\t\t\t}\n\t\t\t\t// When expanding, get all columns\n\t\t\t\treturn true;\n\t\t\t});\n\n\t\t\t// Get column wise delta for resizableColumns\n\t\t\tconst columnWiseDeltas = this.getColumnWiseDeltas(resizableColumns, deltaX);\n\t\t\tconst columnsToBeResized = Object.keys(columnWiseDeltas);\n\n\t\t\t// check if all column wise deltas are 0. This happens when deltaX is more than maximum allowed delta for all columns\n\t\t\tconst everyColumnHasZeroDelta = Object.values(columnWiseDeltas).every((delta) => delta === 0);\n\n\t\t\tif ((columns[resizedColumnIndex].width + deltaX) > MINIMUM_COLUMN_WIDTH && !isEmpty(columnWiseDeltas) && !everyColumnHasZeroDelta) {\n\t\t\t\tcolumns[resizedColumnIndex].width += deltaX;\n\t\t\t\t// Adjust width of all resizable columns\n\t\t\t\tcolumnsToBeResized.forEach((columnKey) => {\n\t\t\t\t\tconst idx = columns.findIndex((col) => col.key === columnKey);\n\t\t\t\t\tcolumns[idx].width -= columnWiseDeltas[columnKey];\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tcolumnResized: true,\n\t\t\t\tcolumns: columns\n\t\t\t};\n\t\t});\n\t}\n\n\toverSelectOption(evt) {\n\t\t// Differentiate between mouse and keyboard event\n\t\tif (evt.type === \"mouseenter\" && !this.keyBoardEventCalled) {\n\t\t\tthis.mouseEventCalled = true;\n\t\t\tthis.isOverSelectOption = !this.isOverSelectOption;\n\t\t} else if (evt.type === \"mouseleave\" && this.mouseEventCalled) {\n\t\t\tthis.mouseEventCalled = false;\n\t\t\tthis.isOverSelectOption = !this.isOverSelectOption;\n\t\t} else if (evt.type === \"focus\" && !this.mouseEventCalled) {\n\t\t\tthis.keyBoardEventCalled = true;\n\t\t\tthis.isOverSelectOption = !this.isOverSelectOption;\n\t\t} else if (evt.type === \"blur\" && this.keyBoardEventCalled) {\n\t\t\tthis.keyBoardEventCalled = false;\n\t\t\tthis.isOverSelectOption = !this.isOverSelectOption;\n\t\t}\n\t}\n\n\t// Responsible for rendering a table row given an array of columns.\n\trowRenderer(scrollKey, { className, columns, index, key, rowData, style }) {\n\t\tlet selectOption = \"\";\n\t\tlet selectedRow = false;\n\t\tconst rowDisabled = typeof rowData.disabled === \"boolean\" ? rowData.disabled : false;\n\n\t\tif (typeof this.props.rowHeight === \"function\" && this.props.rowHeight({ index }) === 0) {\n\t\t\treturn null;\n\t\t}\n\n\t\tif (this.props.selectable) {\n\t\t\tconst rowSelected = this.isRowSelected(rowData.originalRowIndex);\n\t\t\tselectedRow = this.props.selectable && rowSelected;\n\t\t\tif (this.props.rowSelection !== ROW_SELECTION.SINGLE) {\n\t\t\t\tconst translatedRowCheckboxLabel = this.props.intl.formatMessage(\n\t\t\t\t\t{ id: \"virtualizedTable.row.checkbox.label\", defaultMessage: defaultMessages[\"virtualizedTable.row.checkbox.label\"] },\n\t\t\t\t\t{ row_index: index + 1, table_label: (this.props.tableLabel ? this.props.tableLabel : \"\") }\n\t\t\t\t);\n\n\t\t\t\tselectOption = (<div className=\"properties-vt-row-checkbox\"\n\t\t\t\t\trole=\"gridcell\"\n\t\t\t\t\tonMouseEnter={(evt) => this.overSelectOption(evt)}\n\t\t\t\t\tonMouseLeave={(evt) => this.overSelectOption(evt)}\n\t\t\t\t\tonFocus={(evt) => this.overSelectOption(evt)}\n\t\t\t\t\tonBlur={(evt) => this.overSelectOption(evt)}\n\t\t\t\t\tonKeyDown={(evt) => {\n\t\t\t\t\t\tif (evt.code === \"Space\" || evt.code === \"Enter\") {\n\t\t\t\t\t\t\tthis.onRowClick(evt, rowData, index);\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<Checkbox\n\t\t\t\t\t\tid={`properties-vt-row-cb-${this.uuid}-${scrollKey}-${index}`}\n\t\t\t\t\t\tkey={`properties-vt-row-cb-${scrollKey}-${index}`}\n\t\t\t\t\t\tlabelText={translatedRowCheckboxLabel}\n\t\t\t\t\t\thideLabel\n\t\t\t\t\t\tchecked={rowSelected}\n\t\t\t\t\t\tdisabled={rowDisabled}\n\t\t\t\t\t/>\n\t\t\t\t</div>);\n\t\t\t}\n\t\t}\n\n\t\tif (this.props.summaryTable) {\n\t\t\tselectOption = <div className=\"properties-vt-row-checkbox\" />;\n\t\t}\n\n\t\tif (rowData.loading === true) {\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tclassName={className}\n\t\t\t\t\tkey={key}\n\t\t\t\t\tdata-role=\"properties-loading-row\"\n\t\t\t\t\trole=\"row\"\n\t\t\t\t\tstyle={style}\n\t\t\t\t>\n\t\t\t\t\t<Loading className=\"properties-vt-small-loading\" small withOverlay={false} />\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\tconst width = (parseInt(style.width, 10)) + \"px\"; // Subtract 2px to account for row borders\n\t\tconst newStyle = Object.assign({}, style, { width: width });\n\n\t\t// Empty style required on cell for react-virtualized. This div wrapper is required to apply the onDoubleClick handler.\n\t\treturn (<div style={{}} key={key} className=\"properties-vt-double-click\" onDoubleClick={(evt) => this.onRowDoubleClick(evt, rowData.rowKey, index)}>\n\t\t\t<div\n\t\t\t\tclassName={classNames(className,\n\t\t\t\t\t{ \"properties-vt-row-selected\": selectedRow },\n\t\t\t\t\t{ \"properties-vt-row-disabled\": rowDisabled },\n\t\t\t\t\t{ \"properties-vt-row-non-interactive\": !this.props.selectable } // ReadonlyTable with single row selection is non-interactive.\n\t\t\t\t)}\n\t\t\t\tdata-role=\"properties-data-row\"\n\t\t\t\trole=\"row\"\n\t\t\t\tstyle={newStyle}\n\t\t\t\tonMouseDown={(evt) => this.onRowClick(evt, rowData, index)}\n\t\t\t>\n\t\t\t\t{selectOption}\n\t\t\t\t{columns}\n\t\t\t</div>\n\t\t</div>);\n\t}\n\n\trender() {\n\t\tconst defaultTestHeight = 2000; // 2000 is set to accommodate test data \"category-selection-data\" with all categories expanded\n\n\t\treturn (\n\t\t\t<div className=\"properties-vt\">\n\t\t\t\t<div className={classNames(\"properties-vt-autosizer\",\n\t\t\t\t\t{ \"properties-vt-single-selection\": this.props.rowSelection && this.props.rowSelection === ROW_SELECTION.SINGLE,\n\t\t\t\t\t\t\"properties-light-disabled\": !this.props.light })}\n\t\t\t\t>\n\t\t\t\t\t<AutoSizer>\n\t\t\t\t\t\t{({ height, width }) => ( // Table height: subtract 50 for margin below the table.\n\t\t\t\t\t\t\t<Table\n\t\t\t\t\t\t\t\tref={this.virtualizedTableRef}\n\t\t\t\t\t\t\t\twidth={width ? width : 500}\n\t\t\t\t\t\t\t\t// AutoSizer manages width and height properties so the table fills the available space.\n\t\t\t\t\t\t\t\t// It does a direct DOM manipulation to the parent, outside React's VirtualDOM.\n\t\t\t\t\t\t\t\t// Since the actual DOM is not available when unit testing, we are passing in a default\n\t\t\t\t\t\t\t\t// width of 500 and a default height of 300.\n\t\t\t\t\t\t\t\theight={this.props.tableHeight || height || defaultTestHeight}\n\n\t\t\t\t\t\t\t\tclassName=\"properties-autosized-vt\"\n\t\t\t\t\t\t\t\taria-label={this.props.tableLabel ? this.props.tableLabel : \"\"}\n\n\t\t\t\t\t\t\t\tdisableHeader={this.props.disableHeader}\n\t\t\t\t\t\t\t\theaderClassName=\"properties-autosized-vt-header\"\n\t\t\t\t\t\t\t\theaderHeight={32}\n\t\t\t\t\t\t\t\theaderRowRenderer={this.headerRowRenderer.bind(this, this.props.scrollKey)}\n\t\t\t\t\t\t\t\tonHeaderClick={this.props.onHeaderClick}\n\n\t\t\t\t\t\t\t\trowClassName=\"properties-vt-row-class\"\n\t\t\t\t\t\t\t\trowHeight={this.props.rowHeight ? this.props.rowHeight : 32}\n\n\t\t\t\t\t\t\t\trowCount={this.state.rowCount}\n\t\t\t\t\t\t\t\trowGetter={this.props.rowGetter}\n\t\t\t\t\t\t\t\trowRenderer={this.rowRenderer.bind(this, this.props.scrollKey)}\n\n\t\t\t\t\t\t\t\tscrollToIndex={this.props.scrollToIndex}\n\t\t\t\t\t\t\t\tscrollToAlignment={this.props.scrollToAlignment}\n\n\t\t\t\t\t\t\t\tsort={this.props.onSort}\n\t\t\t\t\t\t\t\tsortDirection={this.props.sortDirection}\n\t\t\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tthis.state.columns.map((column) => (\n\t\t\t\t\t\t\t\t\t\t<Column\n\t\t\t\t\t\t\t\t\t\t\tkey={column.key}\n\t\t\t\t\t\t\t\t\t\t\tlabel={column.label}\n\t\t\t\t\t\t\t\t\t\t\tdataKey={column.key}\n\t\t\t\t\t\t\t\t\t\t\twidth={column.width}\n\t\t\t\t\t\t\t\t\t\t\tcolumnData={column}\n\t\t\t\t\t\t\t\t\t\t\tdisableSort={typeof this.props.sortColumns[column.key] === \"undefined\"}\n\t\t\t\t\t\t\t\t\t\t\tcellRenderer={column.isHTML ? this.cellRendererHTML : this.cellRenderer}\n\t\t\t\t\t\t\t\t\t\t\theaderRenderer={this.headerColRenderer}\n\t\t\t\t\t\t\t\t\t\t\t{...column.minWidth && { minWidth: column.minWidth }}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t))\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</Table>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</AutoSizer>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n}\n\nVirtualizedTable.defaultProps = {\n\tdisableHeader: false\n};\n\nVirtualizedTable.propTypes = {\n\ttableLabel: PropTypes.string,\n\ttableHeight: PropTypes.number.isRequired,\n\tselectable: PropTypes.bool,\n\tsummaryTable: PropTypes.bool,\n\trowSelection: PropTypes.string,\n\tdisableHeader: PropTypes.bool,\n\tcolumns: PropTypes.array.isRequired,\n\trowCount: PropTypes.number.isRequired,\n\trowGetter: PropTypes.func.isRequired,\n\trowHeight: PropTypes.oneOfType([\n\t\tPropTypes.func.isRequired,\n\t\tPropTypes.number.isRequired\n\t]),\n\tonRowDoubleClick: PropTypes.func,\n\trowsSelected: PropTypes.array, // Required if selectable is true\n\tcheckedAll: PropTypes.bool, // Required if selectable is true\n\tsetRowsSelected: PropTypes.func, // Required if selectable is true\n\tsetAllRowsSelected: PropTypes.func, // Required if selectable is true\n\tscrollToIndex: PropTypes.number,\n\tscrollToAlignment: PropTypes.string,\n\tonSort: PropTypes.func,\n\tsortBy: PropTypes.string,\n\tsortColumns: PropTypes.object,\n\tsortDirection: PropTypes.string,\n\tonHeaderClick: PropTypes.func,\n\tscrollKey: PropTypes.string,\n\ttableState: PropTypes.string,\n\tlight: PropTypes.bool,\n\tintl: PropTypes.object.isRequired\n};\n\nexport default injectIntl(VirtualizedTable);\n","/*\n * Copyright 2017-2023 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/* eslint complexity: [\"error\", 25] */\n/* eslint max-depth: [\"error\", 6] */\n\nimport React from \"react\";\nimport { injectIntl } from \"react-intl\";\nimport ReactDOM from \"react-dom\";\nimport PropTypes from \"prop-types\";\nimport { Search } from \"carbon-components-react\";\nimport VirtualizedTable from \"./../virtualized-table/virtualized-table.jsx\";\nimport { REM_ROW_HEIGHT, REM_HEADER_HEIGHT, ONE_REM_HEIGHT, SORT_DIRECTION, STATES, ROW_HEIGHT, ROW_SELECTION } from \"./../../constants/constants\";\nimport ReactResizeDetector from \"react-resize-detector\";\nimport classNames from \"classnames\";\nimport { has, isEmpty } from \"lodash\";\nimport defaultMessages from \"../../../../locales/common-properties/locales/en.json\";\n\nclass FlexibleTable extends React.Component {\n\n\tconstructor(props) {\n\t\tsuper(props);\n\n\t\tconst sortDirs = {};\n\t\tif (typeof this.props.sortable !== \"undefined\") {\n\t\t\tfor (var i = 0; i < this.props.sortable.length; i++) {\n\t\t\t\tconst sortCol = this.props.sortable[i];\n\t\t\t\tsortDirs[sortCol] = SORT_DIRECTION.NOT_SORTED;\n\t\t\t}\n\t\t}\n\t\tthis.state = {\n\t\t\tcheckedAllRows: false,\n\t\t\tcolumnSortDir: sortDirs,\n\t\t\tcurrentSortColumn: \"\",\n\t\t\ttableWidth: 0,\n\t\t\ttableHeight: 0,\n\t\t\trows: typeof props.rows !== \"undefined\" ? props.rows : 5.5,\n\t\t\tdynamicHeight: null\n\t\t};\n\n\t\tthis.rowHeight = this.rowHeight.bind(this);\n\t\tthis.rowGetter = this.rowGetter.bind(this);\n\n\t\tthis.getOriginalRowIndex = this.getOriginalRowIndex.bind(this);\n\t\tthis.getLastChildPropertyIdRow = this.getLastChildPropertyIdRow.bind(this);\n\n\t\tthis.calculateColumnWidths = this.calculateColumnWidths.bind(this);\n\t\tthis.handleFilterChange = this.handleFilterChange.bind(this);\n\t\tthis.onSort = this.onSort.bind(this);\n\t\tthis.sortHeaderClick = this.sortHeaderClick.bind(this);\n\t\tthis._updateTableWidth = this._updateTableWidth.bind(this);\n\t\tthis._adjustTableHeight = this._adjustTableHeight.bind(this);\n\t\tthis.handleCheckedRow = this.handleCheckedRow.bind(this);\n\t\tthis.handleCheckedAllRows = this.handleCheckedAllRows.bind(this);\n\t\tthis.handleCheckedMultipleRows = this.handleCheckedMultipleRows.bind(this);\n\t}\n\n\tcomponentDidMount() {\n\t\tthis._adjustTableHeight();\n\t\twindow.addEventListener(\"resize\", this._adjustTableHeight);\n\t\tthis.tableNode = ReactDOM.findDOMNode(this.refs.table);\n\t}\n\n\tcomponentDidUpdate(prevProps, prevState) {\n\t\tif (prevProps.rows !== this.props.rows ||\n\t\t\tprevProps.columns !== this.props.columns ||\n\t\t\tprevProps.noAutoSize !== this.props.noAutoSize) {\n\t\t\tthis._adjustTableHeight();\n\t\t}\n\n\t\t// Calculate if checkedAllRows is true\n\t\tif (this.props.selectedRows && !isEmpty(this.props.data)) {\n\t\t\tthis.setCheckedAll(this.props.selectedRows);\n\t\t}\n\n\t\tthis.tableNode = ReactDOM.findDOMNode(this.refs.table);\n\t}\n\n\tcomponentWillUnmount() {\n\t\twindow.removeEventListener(\"resize\", this._adjustTableHeight);\n\t}\n\n\tonSort({ sortBy }) {\n\t\tif (this.props.onSort) {\n\t\t\tconst sortDirection = (this.state.columnSortDir[sortBy] === SORT_DIRECTION.ASC) ? SORT_DIRECTION.DESC : SORT_DIRECTION.ASC;\n\t\t\tconst spec = {\n\t\t\t\tcolumn: sortBy,\n\t\t\t\tdirection: sortDirection\n\t\t\t};\n\t\t\tthis.props.onSort(spec);\n\t\t}\n\t}\n\n\t/**\n\t* The current displayed row may have an index that is different from its actual index within the dataset\n\t* Given the current displayed row and index of the table,\n\t* return its original row index from its row's propertyId\n\t*/\n\tgetOriginalRowIndex(row, index) {\n\t\tlet rowIndex = index;\n\t\tif (row.columns && has(row.columns[0], \"content.props.children.props.propertyId.propertyId\")) {\n\t\t\t// this is a nested control\n\t\t\trowIndex = this.getLastChildPropertyIdRow(row.columns[0].content.props.children.props.propertyId, index);\n\t\t} else if (row.columns && has(row.columns[0], \"content.props.children.props.propertyId.index\")) {\n\t\t\t// for rows that have multi-select controls in them\n\t\t\trowIndex = row.columns[0].content.props.children.props.propertyId.index;\n\t\t} else if (row.columns && has(row.columns[0], \"content.props.children.props.propertyId.row\")) {\n\t\t\trowIndex = row.columns[0].content.props.children.props.propertyId.row;\n\t\t} else if (typeof row.rowKey === \"number\") { // expression tables uses rowKey\n\t\t\trowIndex = parseInt(row.rowKey, 10);\n\t\t}\n\t\treturn rowIndex;\n\t}\n\n\t// Get the 'row' of the last child's propertyId\n\tgetLastChildPropertyIdRow(propertyId, defaultRowIndex) {\n\t\tif (typeof propertyId.propertyId !== \"undefined\") {\n\t\t\treturn this.getLastChildPropertyIdRow(propertyId.propertyId);\n\t\t}\n\t\tif (typeof propertyId.row !== \"undefined\") {\n\t\t\treturn propertyId.row;\n\t\t}\n\t\treturn defaultRowIndex;\n\t}\n\n\t/**\n\t* The header checkAll box may change depending on the current visible rows\n\t* Determine if all visible rows in the table are currently selected\n\t* and set the `checkedAllRows` state accordingly\n\t*/\n\tsetCheckedAll(selectedRows) {\n\t\tlet checkAll = true;\n\t\tfor (let idx = 0; idx < this.props.data.length; idx++) {\n\t\t\tconst row = this.props.data[idx];\n\t\t\tconst originalRowIndex = this.getOriginalRowIndex(row, idx);\n\t\t\tif (selectedRows.indexOf(originalRowIndex) < 0) {\n\t\t\t\tcheckAll = false;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (this.state.checkedAllRows !== checkAll) {\n\t\t\tthis.setState({ checkedAllRows: checkAll });\n\t\t}\n\t}\n\n\t/**\n\t* Calculate the width for each column to fit within the table\n\t* Widths provided in columns without 'px' are 'weighted' and will be scaled\n\t* Widths provided in columns with 'px' are used as is without scaling\n\t* if width is provided with 'px', subtract that from the total available table width\n\t* if width is provided, divide the column 'weighted' width with the max width from columns\n\t* return the scaled factor\n\t* multiply each column 'weighted' width with the scaled factor to get the actual width in pixels\n\t* @param columns column definitions\n\t* @param parentTableWidth\n\t*/\n\tcalculateColumnWidths(columns, parentTableWidth) {\n\t\tlet tableWidth = parentTableWidth - 12; // subtract 12 for the left padding scss $spacing-04\n\t\tif (this.props.rowSelection !== ROW_SELECTION.SINGLE) {\n\t\t\ttableWidth -= 40;\n\t\t}\n\t\tlet remainingColumns = columns.length; // keep track of how many columns to calculate width for\n\t\tlet maxWeight = 0;\n\n\t\tfor (const columnDef of columns) {\n\t\t\t// if columns have specific width subtract from total width\n\t\t\tif (columnDef.width) {\n\t\t\t\tif (typeof columnDef.width === \"string\" && columnDef.width.includes(\"px\")) {\n\t\t\t\t\ttableWidth -= parseInt(columnDef.width, 10);\n\t\t\t\t\tremainingColumns--;\n\t\t\t\t} else {\n\t\t\t\t\tmaxWeight = Math.max(maxWeight, columnDef.width); // keep track of which column has highest width provided\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst widths = [];\n\t\tconst defaultWidth = Math.floor(tableWidth / remainingColumns); // use default width for columns without a weight\n\t\tconst weightedWidths = [];\n\t\tlet sumWeightedWidths = 0;\n\n\t\t// scale weight of columns with width provided\n\t\tfor (const columnDef of columns) {\n\t\t\tif (columnDef.width && !isNaN(columnDef.width)) {\n\t\t\t\tweightedWidths.push(columnDef.width / maxWeight);\n\t\t\t\tsumWeightedWidths += (columnDef.width / maxWeight);\n\t\t\t} else {\n\t\t\t\tweightedWidths.push(null);\n\t\t\t}\n\t\t}\n\n\t\tconst scaledWidth = tableWidth / sumWeightedWidths; // scaled width multiplier for each column with width provided\n\n\t\tlet sumColumnWidth = 0;\n\t\tfor (let idx = 0; idx < columns.length; idx++) {\n\t\t\tconst columnDef = columns[idx];\n\t\t\tif (columnDef.width) {\n\t\t\t\t// use the width provided with 'px' as is\n\t\t\t\tif (typeof columnDef.width === \"string\" && columnDef.width.includes(\"px\")) {\n\t\t\t\t\twidths.push(Math.floor(parseInt(columnDef.width, 10)) + \"px\");\n\t\t\t\t\tsumColumnWidth += parseInt(columnDef.width, 10);\n\t\t\t\t} else { // multiply the width provided by the scaled width\n\t\t\t\t\tconst calculatedWidth = Math.floor(weightedWidths[idx] * scaledWidth);\n\t\t\t\t\twidths.push(calculatedWidth + \"px\");\n\t\t\t\t\tsumColumnWidth += calculatedWidth;\n\t\t\t\t}\n\t\t\t} else { // if no width provided, use the defaultWidth\n\t\t\t\twidths.push(defaultWidth);\n\t\t\t\tsumColumnWidth += defaultWidth;\n\t\t\t}\n\t\t}\n\n\t\t// if any columns had decimals floored, allocate additional space to the first column\n\t\tlet compare = parentTableWidth;\n\t\tif (this.props.rowSelection !== ROW_SELECTION.SINGLE) {\n\t\t\tcompare -= 40;\n\t\t}\n\n\t\tif (sumColumnWidth < compare) {\n\t\t\tconst firstColWith = parseInt(widths[0], 10);\n\t\t\twidths[0] = firstColWith + compare - sumColumnWidth + \"px\";\n\t\t}\n\n\t\treturn widths;\n\t}\n\n\t_updateTableWidth(width, height) {\n\t\tif (this.state.tableWidth !== Math.floor(width - 2)) {\n\t\t\tthis.setState({\n\t\t\t\ttableWidth: Math.floor(width - 2) // subtract 2 px for the borders\n\t\t\t});\n\t\t}\n\t}\n\n\t_adjustTableHeight() {\n\t\tif (this.props.noAutoSize) {\n\t\t\treturn;\n\t\t}\n\t\tlet newHeight = this.state.tableHeight;\n\t\tlet dynamicH = this.state.dynamicHeight;\n\t\tconst multiSelectTableHeight = REM_ROW_HEIGHT + REM_HEADER_HEIGHT;\n\t\tif (Array.isArray(this.props.data) && this.props.data.length < this.state.rows) {\n\t\t\tnewHeight = (REM_ROW_HEIGHT * this.props.data.length + REM_HEADER_HEIGHT + (this.props.selectedEditRow ? multiSelectTableHeight : 0)) * ONE_REM_HEIGHT;\n\t\t} else if (this.state.rows > 0) {\n\t\t\tnewHeight = (REM_ROW_HEIGHT * this.state.rows + REM_HEADER_HEIGHT + (this.props.selectedEditRow ? multiSelectTableHeight : 0)) * ONE_REM_HEIGHT;\n\t\t} else if (this.state.rows === 0) { // only display header\n\t\t\tnewHeight = REM_HEADER_HEIGHT * ONE_REM_HEIGHT;\n\t\t} else if (this.state.rows === -1) {\n\t\t\tif (this.flexibleTable) {\n\t\t\t\tconst labelAndDescriptionHeight = 50; // possible dynamically set this in the future\n\t\t\t\tconst ftHeaderHeight = (typeof this.flexibleTableHeader !== \"undefined\") ? ReactDOM.findDOMNode(this.flexibleTableHeader).getBoundingClientRect().height : 0;\n\t\t\t\tconst flyoutHeight = this.findPropertyNodeHeight(this.flexibleTable, \"properties-wf-children\");\n\t\t\t\tconst tearsheetHeight = this.findPropertyNodeHeight(this.flexibleTable, \"properties-primary-tab-panel\");\n\t\t\t\tif (flyoutHeight === 0 && tearsheetHeight === 0) {\n\t\t\t\t\tnewHeight = \"100vh\"; // set full window height if flyout & tearsheet height not found\n\t\t\t\t\tdynamicH = -1;\n\t\t\t\t} else {\n\t\t\t\t\tconst totalHeight = flyoutHeight !== 0 ? flyoutHeight : tearsheetHeight;\n\t\t\t\t\tnewHeight = `calc(${totalHeight - ftHeaderHeight - labelAndDescriptionHeight}px - ${(3.5 * ONE_REM_HEIGHT)}px)`; // 3.5rem to adjust padding\n\t\t\t\t\tdynamicH = (totalHeight - ftHeaderHeight - labelAndDescriptionHeight) - (3.5 * 16);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (newHeight !== this.state.tableHeight) {\n\t\t\tthis.setState({ tableHeight: newHeight, dynamicHeight: dynamicH });\n\t\t}\n\t}\n\n\tfindPropertyNodeHeight(node, className) {\n\t\tif (node && node.parentNode && node.parentNode.className && node.parentNode.className.includes(className)) {\n\t\t\tconst foundNode = ReactDOM.findDOMNode(node.parentNode).getBoundingClientRect();\n\t\t\tif (foundNode) {\n\t\t\t\treturn foundNode.height;\n\t\t\t}\n\t\t\treturn 0;\n\t\t} else if (node && node.parentNode) {\n\t\t\treturn this.findPropertyNodeHeight(node.parentNode, className);\n\t\t}\n\t\treturn 0;\n\t}\n\n\tsortHeaderClick({ dataKey }) {\n\t\tconst colSortDir = this.state.columnSortDir;\n\t\tif (typeof colSortDir[dataKey] !== \"undefined\") {\n\t\t\t// At a time only 1 column will be shown as sorted. Revert other columns to not sorted.\n\t\t\tObject.keys(colSortDir).forEach((key) => {\n\t\t\t\tif (key !== dataKey) {\n\t\t\t\t\tcolSortDir[key] = SORT_DIRECTION.NOT_SORTED;\n\t\t\t\t}\n\t\t\t});\n\t\t\t// Only dataKey column will be sorted\n\t\t\tcolSortDir[dataKey] = (colSortDir[dataKey] === SORT_DIRECTION.ASC) ? SORT_DIRECTION.DESC : SORT_DIRECTION.ASC;\n\t\t\tthis.setState({\n\t\t\t\tcolumnSortDir: colSortDir,\n\t\t\t\tcurrentSortColumn: dataKey\n\t\t\t});\n\t\t}\n\t}\n\n\thandleFilterChange(evt) {\n\t\tif (this.props.onFilter) {\n\t\t\tthis.props.onFilter(evt.target.value);\n\t\t}\n\t}\n\n\thandleCheckedAllRows(checked) {\n\t\tlet selectAll = [];\n\t\tconst controlValue = this.props.data;\n\t\tif (checked) {\n\t\t\tselectAll = Array.from(this.props.selectedRows);\n\t\t\tfor (var rowIndex = 0; rowIndex < controlValue.length; rowIndex++) {\n\t\t\t\tconst originalRowIndex = this.getOriginalRowIndex(controlValue[rowIndex], rowIndex);\n\t\t\t\tselectAll.push(originalRowIndex);\n\t\t\t}\n\t\t}\n\t\tselectAll = Array.from(new Set(selectAll));\n\t\tthis.props.updateRowSelections(selectAll);\n\t\tthis.setState({ checkedAllRows: checked });\n\t}\n\n\t/**\n\t* This method is called when user wants to select multiple rows using shift key\n\t* Select/deselect all rows between lastCheckedRow and existingRow\n\t* @param lastCheckedRow (integer) - index of last selected row\n\t* @param existingRow (integer) - index of row where shift key is clicked\n\t* @param checked (boolean) - rows are to be selected or deselected\n\t*/\n\thandleCheckedMultipleRows(lastCheckedRow, existingRow, checked) {\n\t\tlet selectedRows = this.props.selectedRows ? this.props.selectedRows : [];\n\t\t// Calculate rows between lastChecked row and existingRow\n\t\tlet inBetweenRows;\n\t\tif (lastCheckedRow < existingRow) {\n\t\t\tinBetweenRows = Array.from({ length: (existingRow - lastCheckedRow) + 1 }, (_, i) => lastCheckedRow + i);\n\t\t} else {\n\t\t\tinBetweenRows = Array.from({ length: (lastCheckedRow - existingRow) + 1 }, (_, i) => existingRow + i);\n\t\t}\n\t\t// if selectedRows already has inBetweenRows, remove them first\n\t\tselectedRows = selectedRows.filter((row) => !inBetweenRows.includes(row)); // Deselecting inBetweenRows using shift key\n\t\tif (checked) {\n\t\t\tselectedRows = selectedRows.concat(inBetweenRows); \t// Selecting inBetweenRows using shift key\n\t\t}\n\t\treturn selectedRows;\n\t}\n\n\thandleCheckedRow(data, evt) {\n\t\tconst dataRowIndex = data.originalRowIndex; // Use the originalRowIndex for selection in case rows are filtered.\n\t\tconst displayedRowIndex = data.index;\n\t\tconst checked = data.selected;\n\t\tconst overSelectOption = data.isOverSelectOption;\n\n\t\tif (!this.props.data[displayedRowIndex].disabled && typeof this.props.updateRowSelections === \"function\") {\n\t\t\tif (overSelectOption) { // Checkbox is clicked\n\t\t\t\tlet current = this.props.selectedRows ? this.props.selectedRows : [];\n\t\t\t\tif (data.selectMultipleRows) { // multiple rows selected/deselected using shift key\n\t\t\t\t\tcurrent = this.handleCheckedMultipleRows(data.lastCheckedRow, displayedRowIndex, checked);\n\t\t\t\t\tthis.setCheckedAll(current);\n\t\t\t\t} else if (checked) { // single row selected\n\t\t\t\t\tcurrent = current.concat(dataRowIndex);\n\t\t\t\t\tthis.setCheckedAll(current);\n\t\t\t\t} else if (current) { // single row deselected\n\t\t\t\t\tcurrent = current.filter(function(element) {\n\t\t\t\t\t\treturn element !== dataRowIndex;\n\t\t\t\t\t});\n\t\t\t\t\tthis.setState({ checkedAllRows: false });\n\t\t\t\t}\n\t\t\t\t// Sort ascending because we want to add selected rows in the same order as they're displayed in the table\n\t\t\t\tcurrent.sort((a, b) => a - b);\n\t\t\t\tthis.props.updateRowSelections(current);\n\t\t\t} else if (this.props.rowSelection === ROW_SELECTION.SINGLE) { // Table row is clicked\n\t\t\t\tthis.props.updateRowSelections(data.index, evt, this.props.data[data.index].rowKey);\n\t\t\t}\n\t\t}\n\t}\n\n\n\t/**\n\t* Generate the table header specs from this.props.columns\n\t* this.props.columns: array of objects\n\t* [\n\t* {\n\t* \"key\": string,\n\t* \"label\": string,\n\t* \"width\": integer or string if containts 'px',\n\t* \"description\": optional string,\n\t* \"resizable\": optional boolean,\n\t* \"staticWidth\": optional boolean - This is a special property added only for SPSS modeler which directly calls FlexibleTable. This property is NOT a part of uiHints.\n\t* }\n\t* ]\n\t* @param columnWidths\n\t*/\n\tgenerateTableHeaderRow(columnWidths) {\n\t\tconst headers = [];\n\t\tlet searchLabel = \"\";\n\t\tfor (var j = 0; j < this.props.columns.length; j++) {\n\t\t\tconst columnDef = this.props.columns[j];\n\t\t\tif (typeof this.props.filterable !== \"undefined\" && this.props.filterable[0] === columnDef.key) {\n\t\t\t\tsearchLabel = columnDef.label;\n\t\t\t}\n\t\t\tconst width = Math.abs(parseInt(columnWidths[j], 10));\n\t\t\tlet headerLabel;\n\t\t\tif (typeof (columnDef.label) === \"object\") {\n\t\t\t\theaderLabel = columnDef.label.props.labelText;\n\t\t\t} else if (typeof (columnDef.label) === \"string\") {\n\t\t\t\theaderLabel = columnDef.label;\n\t\t\t}\n\t\t\theaders.push({\n\t\t\t\tkey: columnDef.key,\n\t\t\t\tlabel: columnDef.label,\n\t\t\t\twidth: width,\n\t\t\t\tdescription: columnDef.description,\n\t\t\t\theaderLabel: headerLabel,\n\t\t\t\tresizable: columnDef.resizable,\n\t\t\t\toperation: columnDef.operation,\n\t\t\t\tstaticWidth: columnDef.staticWidth ? columnDef.staticWidth : false // Used to exclude a column from resizing. If true, \"resizable\" value will be ignored.\n\t\t\t});\n\t\t}\n\t\treturn {\n\t\t\theaders: headers,\n\t\t\tsearchLabel: searchLabel\n\t\t};\n\t}\n\n\t/**\n\t* Callback responsible for returning a data row given an index\n\t*/\n\trowGetter({ index }) {\n\t\tconst row = this.props.data[index];\n\t\tconst originalRowIndex = this.getOriginalRowIndex(row, index);\n\n\t\tconst columns = {};\n\t\tif (row.columns) {\n\t\t\tfor (let cidx = 0; cidx < row.columns.length; cidx++) {\n\t\t\t\tconst column = row.columns[cidx];\n\t\t\t\tcolumns[column.column] = column.content;\n\t\t\t}\n\t\t}\n\t\treturn Object.assign({}, columns, {\n\t\t\tloading: false,\n\t\t\tindex: index,\n\t\t\toriginalRowIndex: originalRowIndex,\n\t\t\trowKey: typeof row.rowKey !== \"undefined\" ? row.rowKey : this.props.scrollKey + \"-row-\" + index,\n\t\t\tdisabled: row.disabled\n\t\t});\n\t}\n\n\t// Function that returns the height of a row given its index\n\trowHeight({ index }) {\n\t\treturn ROW_HEIGHT;\n\t}\n\n\trender() {\n\t\tconst tableWidth = this.state.tableWidth;\n\t\tconst columnWidths = this.calculateColumnWidths(this.props.columns, tableWidth);\n\t\tconst headerInfo = this.generateTableHeaderRow(columnWidths);\n\n\t\tconst headers = headerInfo.headers;\n\t\tconst searchLabel = headerInfo.searchLabel;\n\t\tconst disabled = this.props.tableState === STATES.DISABLED;\n\n\t\tlet searchBar = null;\n\n\t\tif (typeof this.props.filterable !== \"undefined\" && this.props.filterable.length !== 0) {\n\t\t\tconst placeHolder = typeof this.props.searchPlaceholder !== \"undefined\"\n\t\t\t\t? this.props.searchPlaceholder\n\t\t\t\t: this.props.intl.formatMessage({ id: \"table.search.placeholder\", defaultMessage: defaultMessages[\"table.search.placeholder\"] }, { column_name: searchLabel });\n\t\t\tconst searchBarLabel = this.props.intl.formatMessage(\n\t\t\t\t{ id: \"table.search.label\", defaultMessage: defaultMessages[\"table.search.label\"] },\n\t\t\t\t{ table_name: this.props.tableLabel }\n\t\t\t);\n\n\t\t\tsearchBar = (\n\t\t\t\t<div className={classNames(\"properties-ft-search-container\", { \"disabled\": disabled })}>\n\t\t\t\t\t<Search\n\t\t\t\t\t\tclassName=\"properties-ft-search-text\"\n\t\t\t\t\t\tplaceholder={placeHolder}\n\t\t\t\t\t\tonChange={this.handleFilterChange}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\tlabelText={searchBarLabel}\n\t\t\t\t\t\tlight={this.props.light}\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\tlet scrollIndex = -1;\n\t\tif (typeof this.props.scrollToRow !== \"undefined\" && this.props.scrollToRow !== null) {\n\t\t\tscrollIndex = this.props.scrollToRow;\n\t\t}\n\n\t\tlet heightStyle = {};\n\t\tif (!this.props.noAutoSize) {\n\t\t\theightStyle = { height: this.state.tableHeight };\n\t\t}\n\n\t\tconst containerClass = this.props.showHeader ? \"properties-ft-container-absolute \" : \"properties-ft-container-absolute-noheader \";\n\t\tconst messageClass = (!this.props.messageInfo) ? containerClass + STATES.INFO : containerClass;\n\t\tconst ftHeader = (searchBar || this.props.topRightPanel)\n\t\t\t? (<div className=\"properties-ft-table-header\" ref={ (ref) => (this.flexibleTableHeader = ref) }>\n\t\t\t\t{searchBar}\n\t\t\t\t{this.props.topRightPanel}\n\t\t\t</div>)\n\t\t\t: null;\n\n\t\tconst emptyTableContent = isEmpty(this.props.data)\n\t\t\t? (\n\t\t\t\t<div className=\"properties-ft-empty-table\">\n\t\t\t\t\t{this.props.emptyTablePlaceholder}\n\t\t\t\t</div>\n\t\t\t)\n\t\t\t: null;\n\n\t\tconst ftClassname = classNames(\"properties-ft-control-container\", { \"properties-light-disabled\": !this.props.light });\n\n\t\tlet tableHeight = 0;\n\t\tconst multiSelectEditRowsRem = 2 * REM_HEADER_HEIGHT; // multi-select adds two rows when selectedEditRow\n\t\tconst multiSelectEditRowsPixels = multiSelectEditRowsRem * ONE_REM_HEIGHT;\n\t\tif (this.state.rows !== -1 && this.state.tableHeight) {\n\t\t\tconst remHeight = parseInt(this.state.tableHeight, 10);\n\t\t\ttableHeight = (remHeight - (this.props.selectedEditRow ? multiSelectEditRowsRem : 0));\n\t\t} else if (this.state.rows === -1 && this.state.dynamicHeight && this.state.dynamicHeight !== -1) {\n\t\t\ttableHeight = this.state.dynamicHeight - (this.props.selectedEditRow ? multiSelectEditRowsPixels : 0);\n\t\t}\n\n\t\treturn (\n\t\t\t<div data-id={\"properties-ft-\" + this.props.scrollKey} className={ftClassname} ref={ (ref) => (this.flexibleTable = ref) }>\n\t\t\t\t{ftHeader}\n\t\t\t\t<div className=\"properties-ft-container-panel\">\n\t\t\t\t\t<ReactResizeDetector handleWidth onResize={this._updateTableWidth}>\n\t\t\t\t\t\t<div className={classNames(\"properties-ft-container-wrapper\", this.props.messageInfo ? this.props.messageInfo.type : \"\")} style={ heightStyle }>\n\t\t\t\t\t\t\t<div className={messageClass}>\n\t\t\t\t\t\t\t\t{this.props.selectedEditRow}\n\t\t\t\t\t\t\t\t<VirtualizedTable\n\t\t\t\t\t\t\t\t\ttableLabel={this.props.tableLabel}\n\t\t\t\t\t\t\t\t\ttableHeight={tableHeight}\n\t\t\t\t\t\t\t\t\tcolumns={headers}\n\t\t\t\t\t\t\t\t\tonHeaderClick={this.sortHeaderClick}\n\t\t\t\t\t\t\t\t\trowCount={this.props.data.length}\n\t\t\t\t\t\t\t\t\trowHeight={this.rowHeight}\n\t\t\t\t\t\t\t\t\trowGetter={this.rowGetter}\n\t\t\t\t\t\t\t\t\tsummaryTable={this.props.summaryTable}\n\t\t\t\t\t\t\t\t\tselectable={typeof this.props.updateRowSelections !== \"undefined\"}\n\t\t\t\t\t\t\t\t\trowSelection={this.props.rowSelection}\n\t\t\t\t\t\t\t\t\tdisableHeader={!this.props.showHeader}\n\t\t\t\t\t\t\t\t\tonRowDoubleClick={this.props.onRowDoubleClick}\n\t\t\t\t\t\t\t\t\trowsSelected={this.props.selectedRows}\n\t\t\t\t\t\t\t\t\tcheckedAll={this.state.checkedAllRows}\n\t\t\t\t\t\t\t\t\tsetRowsSelected={this.handleCheckedRow}\n\t\t\t\t\t\t\t\t\tsetAllRowsSelected={this.handleCheckedAllRows}\n\t\t\t\t\t\t\t\t\tscrollKey={this.props.scrollKey}\n\t\t\t\t\t\t\t\t\tonSort={this.onSort}\n\t\t\t\t\t\t\t\t\tsortBy={this.state.currentSortColumn}\n\t\t\t\t\t\t\t\t\tsortColumns={this.state.columnSortDir}\n\t\t\t\t\t\t\t\t\tsortDirection={this.state.columnSortDir[this.state.currentSortColumn]}\n\t\t\t\t\t\t\t\t\ttableState={this.props.tableState}\n\t\t\t\t\t\t\t\t\tlight={this.props.light}\n\t\t\t\t\t\t\t\t\t{...(scrollIndex !== -1 && { scrollToIndex: scrollIndex, scrollToAlignment: \"center\" })}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</ReactResizeDetector>\n\t\t\t\t</div>\n\t\t\t\t{emptyTableContent}\n\t\t\t</div>\n\t\t);\n\t}\n}\n\nFlexibleTable.defaultProps = {\n\tshowHeader: true,\n\tlight: true,\n\temptyTablePlaceholder: \"\"\n};\n\nFlexibleTable.propTypes = {\n\tsortable: PropTypes.array,\n\tcolumns: PropTypes.array.isRequired,\n\tdata: PropTypes.array.isRequired,\n\temptyTablePlaceholder: PropTypes.oneOfType([\n\t\tPropTypes.string,\n\t\tPropTypes.element\n\t]),\n\tsearchPlaceholder: PropTypes.string,\n\tfilterable: PropTypes.array,\n\tfilterBy: PropTypes.string,\n\tfilterKeyword: PropTypes.string,\n\thideFilterInput: PropTypes.func,\n\tscrollToRow: PropTypes.number,\n\tonSort: PropTypes.func,\n\tonFilter: PropTypes.func,\n\tshowHeader: PropTypes.bool,\n\tselectedEditRow: PropTypes.object,\n\ttopRightPanel: PropTypes.object,\n\tscrollKey: PropTypes.string,\n\ttableLabel: PropTypes.string,\n\trows: PropTypes.number,\n\tnoAutoSize: PropTypes.bool,\n\ttableState: PropTypes.string,\n\tmessageInfo: PropTypes.object,\n\tupdateRowSelections: PropTypes.func,\n\tonRowDoubleClick: PropTypes.func,\n\tselectedRows: PropTypes.array,\n\trowSelection: PropTypes.string,\n\tsummaryTable: PropTypes.bool,\n\tlight: PropTypes.bool,\n\tintl: PropTypes.object.isRequired\n};\n\nexport default injectIntl(FlexibleTable);\n"],"names":["TruncatedContentTooltip","_React$Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","_this","tooltipText","this","props","truncatedRef","_typeof","String","content","type","Checkbox","tooltipRef","firstChild","lastChild","tooltip","React","createElement","className","Tooltip","id","tip","direction","disable","_has","disabled","showToolTipIfTruncated","ref","Component","baseAssignValue","require$$0","baseForOwn","require$$1","baseIteratee","require$$2","mapValues_1","object","iteratee","result","baseDifference","baseFlatten","baseRest","require$$3","isArrayLikeObject","require$$4","last","require$$5","differenceBy_1","array","values","undefined","VirtualizedTable","context","call","state","rowCount","columns","columnResized","virtualizedTableRef","createRef","lastChecked","_isEmpty","rowsSelected","slice","pop","isOverSelectOption","mouseEventCalled","keyBoardEventCalled","cellRenderer","bind","_assertThisInitialized","selectAll","headerRowRenderer","headerColRenderer","onRowClick","overSelectOption","resizeColumn","uuid","uuid4","rowHeight","recomputeRowHeights","evt","rowData","index","target","stopPropagation","selected","isRowSelected","originalRowIndex","setRowsSelected","selectMultipleRows","shiftKey","lastCheckedRow","rowKey","onRowDoubleClick","i","length","operation","findIndex","column","deltaX","columnWiseDeltas","sort","a","b","width","totalDelta","widthOfAllColumns","reduce","prev","current","individualDelta","Math","round","headerLabel","MINIMUM_COLUMN_WIDTH","MINIMUM_COLUMN_WIDTH_WITHOUT_LABEL","_mapValues","indexOf","dataKey","isLastColumn","getColumnIndex","setAllRowsSelected","_ref","cellData","_ref2","dangerouslySetInnerHTML","__html","scrollKey","_ref3","style","checkboxLabelColumnIndex","getCheckboxLabelColumnIndex","headerCheckboxLabel","translatedHeaderCheckboxLabel","intl","formatMessage","defaultMessage","defaultMessages","header_checkbox_label","checkbox","selectable","rowSelection","ROW_SELECTION","SINGLE","role","checkedAll","concat","onChange","checked","labelText","hideLabel","_ref4","_this2","columnData","disableSort","label","sortBy","sortDirection","sortIcon","sortColumns","SORT_DIRECTION","ASC","ArrowUp16","tableState","STATES","DISABLED","DESC","ArrowDown16","ArrowsVertical16","infoIcon","description","showToolTipOnClick","Information16","resizeElem","resizable","Draggable","axis","defaultClassName","defaultClassNameDragging","onDrag","_ref5","position","x","zIndex","tabIndex","headerDisplayLabel","header","classNames","_ref6","_this3","setState","prevState","resizedColumnIndex","resizableColumns","filter","staticWidth","getColumnWiseDeltas","columnsToBeResized","Object","keys","everyColumnHasZeroDelta","every","delta","forEach","columnKey","idx","col","_ref7","_this4","selectOption","selectedRow","rowDisabled","rowSelected","translatedRowCheckboxLabel","row_index","table_label","tableLabel","onMouseEnter","onMouseLeave","onFocus","onBlur","onKeyDown","code","summaryTable","loading","Loading","small","withOverlay","parseInt","newStyle","assign","onDoubleClick","onMouseDown","_this5","light","AutoSizer","_ref8","height","Table","tableHeight","disableHeader","headerClassName","headerHeight","onHeaderClick","rowClassName","rowGetter","rowRenderer","scrollToIndex","scrollToAlignment","onSort","map","Column","_extends","isHTML","cellRendererHTML","headerRenderer","minWidth","nextProps","updatedState","editorSizeUpdated","totalWidth","_differenceBy","defaultProps","injectIntl","FlexibleTable","sortDirs","sortable","NOT_SORTED","checkedAllRows","columnSortDir","currentSortColumn","tableWidth","rows","dynamicHeight","getOriginalRowIndex","getLastChildPropertyIdRow","calculateColumnWidths","handleFilterChange","sortHeaderClick","_updateTableWidth","_adjustTableHeight","handleCheckedRow","handleCheckedAllRows","handleCheckedMultipleRows","window","addEventListener","tableNode","ReactDOM","findDOMNode","refs","table","prevProps","noAutoSize","selectedRows","data","setCheckedAll","removeEventListener","spec","row","rowIndex","children","propertyId","defaultRowIndex","checkAll","parentTableWidth","_step","remainingColumns","maxWeight","_iterator","_createForOfIteratorHelper","s","n","done","columnDef","includes","max","err","e","f","_step2","widths","defaultWidth","floor","weightedWidths","sumWeightedWidths","_iterator2","isNaN","push","scaledWidth","sumColumnWidth","calculatedWidth","compare","firstColWith","newHeight","dynamicH","multiSelectTableHeight","REM_ROW_HEIGHT","REM_HEADER_HEIGHT","Array","isArray","selectedEditRow","ONE_REM_HEIGHT","flexibleTable","ftHeaderHeight","flexibleTableHeader","getBoundingClientRect","flyoutHeight","findPropertyNodeHeight","tearsheetHeight","totalHeight","node","parentNode","foundNode","colSortDir","onFilter","controlValue","from","Set","updateRowSelections","existingRow","inBetweenRows","_","dataRowIndex","displayedRowIndex","element","columnWidths","headers","searchLabel","j","filterable","abs","cidx","ROW_HEIGHT","headerInfo","generateTableHeaderRow","searchBar","placeHolder","searchPlaceholder","column_name","searchBarLabel","table_name","Search","placeholder","size","scrollIndex","scrollToRow","heightStyle","containerClass","showHeader","messageClass","messageInfo","INFO","ftHeader","topRightPanel","emptyTableContent","emptyTablePlaceholder","ftClassname","multiSelectEditRowsRem","multiSelectEditRowsPixels","ReactResizeDetector","handleWidth","onResize"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{_ as e}from"./extends-093996c9.js";import{_ as t,a as r,b as o}from"./createClass-be661622.js";import{_ as i,a as l,b as s,c as a}from"./getPrototypeOf-3751add9.js";import{h as n,v as c,w as p,j as d,d as u,l as h,m as f,c as b}from"./isArrayLikeObject-c0bf3ab6.js";import m from"react";import{injectIntl as v}from"react-intl";import w from"react-dom";import{Checkbox as y,Loading as g,Search as R}from"carbon-components-react";import{y as k,_ as C,z as x,B as S,R as E,S as T,r as I,c as N,F as O,G as H,H as A,O as M}from"./_baseIteratee-eabd2a94.js";import{AutoSizer as D,Table as z,Column as L}from"react-virtualized";import B from"react-draggable";import{ArrowsVertical16 as P,ArrowDown16 as _,ArrowUp16 as j,Information16 as F}from"@carbon/icons-react";import W from"./lib/tooltip.es.js";import{v4 as K}from"uuid";import G from"react-resize-detector";var V={"subPanel.button.tooltip":"Edit","structureListEditor.addButton.label":"Add value","structureListEditor.removeButton.label":"Remove","structureTable.addButton.label":"Add columns","structureTable.removeButton.label":"Remove","fieldPicker.saveButton.label":"Select Fields for","fieldPicker.saveButton.modal.label":"Save and continue","fieldPicker.resetButton.label":"Reset ","fieldPicker.filter.label":"Filter:","fieldPicker.fieldColumn.label":"Field name","fieldPicker.schemaColumn.label":"Schema name","fieldPicker.dataTypeColumn.label":"Data type","fieldPicker.integer.label":"integer","fieldPicker.double.label":"double","fieldPicker.string.label":"string","fieldPicker.date.label":"date","fieldPicker.time.label":"time","fieldPicker.timestamp.label":"timestamp","flyout.applyButton.label":"OK","flyout.rejectButton.label":"Cancel","propertiesEdit.closeButton.label":"Close","propertiesEdit.applyButton.label":"Save","propertiesEdit.rejectButton.label":"Cancel","propertiesEdit.revertButton.label":"Revert","propertiesEdit.resizeButton.expand.label":"Expand","propertiesEdit.resizeButton.contract.label":"Contract","properties.revert.message":"Click Revert to go back to the previous screen or click Close to exit the pane. Then try your operation again.","properties.close.message":"Click Close to exit the pane. Then try your operation again.","properties.support.message":"If the problem persists, contact support.","properties.unexpected.message":"Oops, the pane didn't load.","table.search.header":"View in tables","table.search.placeholder":"Find in column {column_name}","table.search.label":"Search in {table_name} table","summary.longTable.placeholder":"More than ten fields...","alerts.tab.title":"Alerts","title.editor.label":"edit title","title.editor.helpButton.label":"help","table.summary.error":"There are {errorMsgCount} error cells. ","table.summary.warning":"There are {warningMsgCount} warning cells. ","control.summary.error":"There are {errorMsgCount} parameters with errors. ","control.summary.warning":"There are {warningMsgCount} parameters with warnings. ","control.summary.error.warning":"There are {errorMsgCount} parameters with errors and {warningMsgCount} parameters with warnings.","required.error":"You must enter a value for {label}.","datetime.format.error":"Invalid {role}. Format should be {format}.","invalid.field.error":"Invalid {label}, field not found in data set.","invalid.number.error":"Number is not valid.","expression.validate.label":"Validate","expression.validating.label":"Validating","expression.builder.title":"Expression Builder","expression.builder.icon.description":"launch expression builder","expression.builder.label":"Expression","expression.fields.table.label":"Fields table","expression.values.table.label":"Values table","expression.fields.empty.table.label":"No fields found","expression.values.empty.table.label":"No values found","expression.functions.table.label":"Functions table","expression.fields.dropdown":"Fields","expression.fields.title":"Fields","expression.values.title":"Values","expression.field.column":"Field","expression.field.column.description":"","expression.storage.column":"Storage","expression.value.column":"Value","expression.value.column.description":"","expression.function.column":"Function","expression.return.column":"Return","expression.recently.used.column":"Item","expression.field.tab":"Fields","expression.functions.tab":"Functions","expression.recently.used":"Recently Used","expression.all.functions":"All Functions","expression.min.label":"Min","expression.minimize.label":"Minimize","expression.max.label":"Max","expression.maximize.label":"Maximize","toggle.on.label":"On","toggle.off.label":"Off","passwordShow.tooltip":"Show password","passwordHide.tooltip":"Hide password","expression.no.functions":"No functions found.","multi.selected.row.label":"rows selected.","multi.selected.row.action":"Changing a value in this row will change the value in all allowed selected rows.","datetimefield.format.error.message":"Invalid format object provided. Check input definitions.","datepickerRangeStart.default.label":"Start","datepickerRangeEnd.default.label":"End","editorform.group.type.error":"(Unknown group type '{group.groupType()}')","moveable.table.button.top":"Move to top","moveable.table.button.up":"Move up","moveable.table.button.down":"Move down","moveable.table.button.bottom":"Move to bottom","list.table.label":"Values","dropdown.tooltip.openMenu":"Open menu","dropdown.tooltip.closeMenu":"Close menu","dropdown.tooltip.clear.all":"Clear all","dropdown.tooltip.clear.selection":"Clear selection","truncate.long.string.error":"These values exceed the display limit of {truncate_limit} characters and can't be edited.","properties.label":"{label} Properties","properties.error.label":"Error in properties","readonlytable.edit.button.label":"Edit","toggletext.icon.description":"{toggletext_label} Icon","multiselect.dropdown.empty.label":"None selected","multiselect.dropdown.options.selected.label":"options selected","virtualizedTable.header.checkbox.label":"Select all {header_checkbox_label}","virtualizedTable.row.checkbox.label":"Select row {row_index} from {table_label}","properties.empty.table.text":'To begin, click "{button_label}"',"label.indicator.required":"(required)","label.indicator.optional":"(optional)"};function U(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,o=l(e);if(t){var i=l(this).constructor;r=Reflect.construct(o,arguments,i)}else r=o.apply(this,arguments);return s(this,r)}}var q=function(e){i(s,e);var l=U(s);function s(){return t(this,s),l.apply(this,arguments)}return r(s,[{key:"render",value:function(){var e=this,t=this.props.tooltipText,r=this.props.truncatedRef;"object"!==o(this.props.tooltipText)&&(t=String(this.props.tooltipText)),this.props.content&&this.props.content.type===y&&this.tooltipRef&&this.tooltipRef.firstChild&&(r=this.tooltipRef.firstChild.lastChild);var i=m.createElement("div",{className:"properties-tooltips"},t);return m.createElement("div",{className:"properties-truncated-tooltip"},m.createElement(W,{id:"properties",tip:i,direction:"bottom",className:"properties-tooltips",disable:!n(this.props,"disabled")||this.props.disabled,showToolTipIfTruncated:!0,truncatedRef:r},m.createElement("div",{ref:function(t){return e.tooltipRef=t}},this.props.content)))}}]),s}(m.Component),X=q,Y=c,$=k,J=C;var Q=function(e,t){var r={};return t=J(t),$(e,(function(e,o,i){Y(r,o,t(e,o,i))})),r},Z=p,ee=d,te=C,re=h,oe=f,ie=u((function(e,t){var r=oe(t);return re(r)&&(r=void 0),re(e)?Z(e,ee(t,1,re,!0),te(r)):[]}));function le(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,o=l(e);if(t){var i=l(this).constructor;r=Reflect.construct(o,arguments,i)}else r=o.apply(this,arguments);return s(this,r)}}var se=function(o){i(s,o);var l=le(s);function s(e,r){var o;return t(this,s),(o=l.call(this,e,r)).state={rowCount:o.props.rowCount,columns:o.props.columns,columnResized:!1},o.virtualizedTableRef=m.createRef(),o.lastChecked=b(e.rowsSelected)?null:e.rowsSelected.slice(-1).pop(),o.isOverSelectOption=!1,o.mouseEventCalled=!1,o.keyBoardEventCalled=!1,o.cellRenderer=o.cellRenderer.bind(a(o)),o.selectAll=o.selectAll.bind(a(o)),o.headerRowRenderer=o.headerRowRenderer.bind(a(o)),o.headerColRenderer=o.headerColRenderer.bind(a(o)),o.onRowClick=o.onRowClick.bind(a(o)),o.overSelectOption=o.overSelectOption.bind(a(o)),o.resizeColumn=o.resizeColumn.bind(a(o)),o.uuid=K(),o}return r(s,[{key:"componentDidUpdate",value:function(){"function"==typeof this.props.rowHeight&&this.recomputeRowHeights()}},{key:"onRowClick",value:function(e,t,r){if("bx--select-option"===e.target.className)e.stopPropagation();else{var o=!this.isRowSelected(t.originalRowIndex);"function"==typeof this.props.setRowsSelected&&(this.props.setRowsSelected({index:r,originalRowIndex:t.originalRowIndex,selected:o,isOverSelectOption:this.isOverSelectOption,selectMultipleRows:!!e.shiftKey&&e.shiftKey,lastCheckedRow:null===this.lastChecked?0:this.lastChecked},e),this.lastChecked=t.index)}}},{key:"onRowDoubleClick",value:function(e,t,r){this.props.onRowDoubleClick&&this.props.onRowDoubleClick(e,t,r)}},{key:"getCheckboxLabelColumnIndex",value:function(e){for(var t=0;t<e.length;t++)if("index"!==e[t].operation)return t;return 0}},{key:"getColumnIndex",value:function(e,t){return e.findIndex((function(e){return e.key===t}))}},{key:"getColumnWiseDeltas",value:function(e,t){var r={};if(e.length>0){e.sort((function(e,t){return e.width-t.width}));for(var o=t,i=0;i<e.length;i++){var l=e.slice(i).reduce((function(e,t){return e+t.width}),0),s=Math.round(e[i].width*o/l);e[i].headerLabel.length>0&&e[i].width-s<x?s=e[i].width-x:e[i].width-s<S&&(s=e[i].width-S),o-=s,r[e[i].key]=s}if(o>0)return Q(r,(function(){return 0}))}return r}},{key:"isRowSelected",value:function(e){return!!this.props.rowsSelected&&this.props.rowsSelected.indexOf(e)>-1}},{key:"isLastColumn",value:function(e){var t=this.getColumnIndex(this.props.columns,e)===this.props.columns.length-1;return t}},{key:"selectAll",value:function(e){this.props.setAllRowsSelected(e)}},{key:"cellRenderer",value:function(e){var t=e.cellData;return null==t?"":t}},{key:"cellRendererHTML",value:function(e){var t=e.cellData;return null==t?"":m.createElement("div",{dangerouslySetInnerHTML:{__html:t}})}},{key:"recomputeRowHeights",value:function(e){this.virtualizedTableRef&&this.virtualizedTableRef.current&&this.virtualizedTableRef.current.recomputeRowHeights(e)}},{key:"headerRowRenderer",value:function(e,t){var r=t.className,o=t.columns,i=t.style,l=void 0===this.props.columns||0===this.props.columns.length?0:this.getCheckboxLabelColumnIndex(this.props.columns),s=void 0===this.props.columns||0===this.props.columns.length?"":this.props.columns[l].headerLabel,a=this.props.intl.formatMessage({id:"virtualizedTable.header.checkbox.label",defaultMessage:V["virtualizedTable.header.checkbox.label"]},{header_checkbox_label:s}),n=this.props.selectable&&this.props.rowSelection!==E.SINGLE?m.createElement("div",{role:"checkbox","aria-checked":this.props.checkedAll,className:"properties-vt-header-checkbox"},m.createElement(y,{id:"properties-vt-hd-cb-".concat(this.uuid,"-").concat(e),onChange:this.selectAll,checked:this.props.checkedAll,labelText:a,hideLabel:!0})):"";return m.createElement("div",{className:r,"data-role":"properties-header-row",role:"row",style:i},n,o)}},{key:"headerColRenderer",value:function(e){var t=this,r=e.columnData,o=e.dataKey,i=e.disableSort,l=e.label;e.sortBy,e.sortDirection;var s=null;if(void 0!==this.props.sortColumns[o]){var a=null;switch(this.props.sortColumns[o]){case I.ASC:a=m.createElement(j,{disabled:this.props.tableState===T.DISABLED});break;case I.DESC:a=m.createElement(_,{disabled:this.props.tableState===T.DISABLED});break;default:a=m.createElement(P,{disabled:this.props.tableState===T.DISABLED})}s=m.createElement("span",{className:"properties-ft-column-sort-icon"},a)}var n=b(r.description)?null:m.createElement("div",{className:"properties-vt-info-icon-tip"},m.createElement(W,{id:"properties-tooltip-info",tip:r.description,direction:"bottom",className:"properties-tooltips",showToolTipOnClick:!0},m.createElement(F,{className:"properties-vt-info-icon"}))),c=r.resizable&&!this.isLastColumn(o)?m.createElement(B,{axis:"x",defaultClassName:"properties-vt-header-resize",defaultClassNameDragging:"properties-vt-header-resize-active",onDrag:function(e,r){var i=r.deltaX;t.resizeColumn({dataKey:o,deltaX:i})},position:{x:0},zIndex:999},m.createElement("div",{role:"button",tabIndex:"0","aria-label":"Resize column"})):"",p="string"==typeof l?m.createElement("span",null,l):l,d=m.createElement("div",{className:"properties-vt-label-tip-icon"},m.createElement(X,{tooltipText:r.headerLabel,content:p,disabled:r.disabled}),n);return m.createElement("div",{"data-id":"properties-vt-header-".concat(o),className:N({"properties-vt-column-with-resize":""!==c,"properties-vt-column-without-resize":""===c})},m.createElement("div",{className:N("properties-vt-column properties-tooltips-container",{"sort-column-active":o===this.props.sortBy})},d,!1===i&&s),c)}},{key:"resizeColumn",value:function(e){var t=this,r=e.dataKey,o=e.deltaX;this.setState((function(e){var i=e.columns,l=t.getColumnIndex(i,r),s=i.slice(l+1).filter((function(e){return!e.staticWidth})).filter((function(e){return!(o>=0)||(e.headerLabel.length>0?e.width>x:e.width>S)})),a=t.getColumnWiseDeltas(s,o),n=Object.keys(a),c=Object.values(a).every((function(e){return 0===e}));return i[l].width+o>x&&!b(a)&&!c&&(i[l].width+=o,n.forEach((function(e){var t=i.findIndex((function(t){return t.key===e}));i[t].width-=a[e]}))),{columnResized:!0,columns:i}}))}},{key:"overSelectOption",value:function(e){"mouseenter"!==e.type||this.keyBoardEventCalled?"mouseleave"===e.type&&this.mouseEventCalled?(this.mouseEventCalled=!1,this.isOverSelectOption=!this.isOverSelectOption):"focus"!==e.type||this.mouseEventCalled?"blur"===e.type&&this.keyBoardEventCalled&&(this.keyBoardEventCalled=!1,this.isOverSelectOption=!this.isOverSelectOption):(this.keyBoardEventCalled=!0,this.isOverSelectOption=!this.isOverSelectOption):(this.mouseEventCalled=!0,this.isOverSelectOption=!this.isOverSelectOption)}},{key:"rowRenderer",value:function(e,t){var r=this,o=t.className,i=t.columns,l=t.index,s=t.key,a=t.rowData,n=t.style,c="",p=!1,d="boolean"==typeof a.disabled&&a.disabled;if("function"==typeof this.props.rowHeight&&0===this.props.rowHeight({index:l}))return null;if(this.props.selectable){var u=this.isRowSelected(a.originalRowIndex);if(p=this.props.selectable&&u,this.props.rowSelection!==E.SINGLE){var h=this.props.intl.formatMessage({id:"virtualizedTable.row.checkbox.label",defaultMessage:V["virtualizedTable.row.checkbox.label"]},{row_index:l+1,table_label:this.props.tableLabel?this.props.tableLabel:""});c=m.createElement("div",{className:"properties-vt-row-checkbox",role:"gridcell",onMouseEnter:function(e){return r.overSelectOption(e)},onMouseLeave:function(e){return r.overSelectOption(e)},onFocus:function(e){return r.overSelectOption(e)},onBlur:function(e){return r.overSelectOption(e)},onKeyDown:function(e){"Space"!==e.code&&"Enter"!==e.code||r.onRowClick(e,a,l)}},m.createElement(y,{id:"properties-vt-row-cb-".concat(this.uuid,"-").concat(e,"-").concat(l),key:"properties-vt-row-cb-".concat(e,"-").concat(l),labelText:h,hideLabel:!0,checked:u,disabled:d}))}}if(this.props.summaryTable&&(c=m.createElement("div",{className:"properties-vt-row-checkbox"})),!0===a.loading)return m.createElement("div",{className:o,key:s,"data-role":"properties-loading-row",role:"row",style:n},m.createElement(g,{className:"properties-vt-small-loading",small:!0,withOverlay:!1}));var f=parseInt(n.width,10)+"px",b=Object.assign({},n,{width:f});return m.createElement("div",{style:{},key:s,className:"properties-vt-double-click",onDoubleClick:function(e){return r.onRowDoubleClick(e,a.rowKey,l)}},m.createElement("div",{className:N(o,{"properties-vt-row-selected":p},{"properties-vt-row-disabled":d},{"properties-vt-row-non-interactive":!this.props.selectable}),"data-role":"properties-data-row",role:"row",style:b,onMouseDown:function(e){return r.onRowClick(e,a,l)}},c,i))}},{key:"render",value:function(){var t=this;return m.createElement("div",{className:"properties-vt"},m.createElement("div",{className:N("properties-vt-autosizer",{"properties-vt-single-selection":this.props.rowSelection&&this.props.rowSelection===E.SINGLE,"properties-light-disabled":!this.props.light})},m.createElement(D,null,(function(r){var o=r.height,i=r.width;return m.createElement(z,{ref:t.virtualizedTableRef,width:i||500,height:t.props.tableHeight||o||2e3,className:"properties-autosized-vt","aria-label":t.props.tableLabel?t.props.tableLabel:"",disableHeader:t.props.disableHeader,headerClassName:"properties-autosized-vt-header",headerHeight:32,headerRowRenderer:t.headerRowRenderer.bind(t,t.props.scrollKey),onHeaderClick:t.props.onHeaderClick,rowClassName:"properties-vt-row-class",rowHeight:t.props.rowHeight?t.props.rowHeight:32,rowCount:t.state.rowCount,rowGetter:t.props.rowGetter,rowRenderer:t.rowRenderer.bind(t,t.props.scrollKey),scrollToIndex:t.props.scrollToIndex,scrollToAlignment:t.props.scrollToAlignment,sort:t.props.onSort,sortDirection:t.props.sortDirection,tabIndex:-1},t.state.columns.map((function(r){return m.createElement(L,e({key:r.key,label:r.label,dataKey:r.key,width:r.width,columnData:r,disableSort:void 0===t.props.sortColumns[r.key],cellRenderer:r.isHTML?t.cellRendererHTML:t.cellRenderer,headerRenderer:t.headerColRenderer},r.minWidth&&{minWidth:r.minWidth}))})))}))))}}],[{key:"getDerivedStateFromProps",value:function(e,t){var r={};e.rowCount!==t.rowCount&&(r.rowCount=e.rowCount);var o=t.columns.reduce((function(e,t){return t.width+e}),0)!==e.columns.reduce((function(e,t){return t.width+e}),0);return t.columnResized&&b(ie(e.columns,t.columns,"headerLabel"))&&!o||(r.columns=e.columns),r}}]),s}(m.Component);se.defaultProps={disableHeader:!1};var ae=v(se);function ne(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return ce(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ce(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var o=0,i=function(){};return{s:i,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,s=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return s=e.done,e},e:function(e){a=!0,l=e},f:function(){try{s||null==r.return||r.return()}finally{if(a)throw l}}}}function ce(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}function pe(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,o=l(e);if(t){var i=l(this).constructor;r=Reflect.construct(o,arguments,i)}else r=o.apply(this,arguments);return s(this,r)}}var de=function(l){i(c,l);var s=pe(c);function c(e){var r;t(this,c);var o={};if(void 0!==(r=s.call(this,e)).props.sortable)for(var i=0;i<r.props.sortable.length;i++){o[r.props.sortable[i]]=I.NOT_SORTED}return r.state={checkedAllRows:!1,columnSortDir:o,currentSortColumn:"",tableWidth:0,tableHeight:0,rows:void 0!==e.rows?e.rows:5.5,dynamicHeight:null},r.rowHeight=r.rowHeight.bind(a(r)),r.rowGetter=r.rowGetter.bind(a(r)),r.getOriginalRowIndex=r.getOriginalRowIndex.bind(a(r)),r.getLastChildPropertyIdRow=r.getLastChildPropertyIdRow.bind(a(r)),r.calculateColumnWidths=r.calculateColumnWidths.bind(a(r)),r.handleFilterChange=r.handleFilterChange.bind(a(r)),r.onSort=r.onSort.bind(a(r)),r.sortHeaderClick=r.sortHeaderClick.bind(a(r)),r._updateTableWidth=r._updateTableWidth.bind(a(r)),r._adjustTableHeight=r._adjustTableHeight.bind(a(r)),r.handleCheckedRow=r.handleCheckedRow.bind(a(r)),r.handleCheckedAllRows=r.handleCheckedAllRows.bind(a(r)),r.handleCheckedMultipleRows=r.handleCheckedMultipleRows.bind(a(r)),r}return r(c,[{key:"componentDidMount",value:function(){this._adjustTableHeight(),window.addEventListener("resize",this._adjustTableHeight),this.tableNode=w.findDOMNode(this.refs.table)}},{key:"componentDidUpdate",value:function(e,t){e.rows===this.props.rows&&e.columns===this.props.columns&&e.noAutoSize===this.props.noAutoSize||this._adjustTableHeight(),this.props.selectedRows&&!b(this.props.data)&&this.setCheckedAll(this.props.selectedRows),this.tableNode=w.findDOMNode(this.refs.table)}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this._adjustTableHeight)}},{key:"onSort",value:function(e){var t=e.sortBy;if(this.props.onSort){var r={column:t,direction:this.state.columnSortDir[t]===I.ASC?I.DESC:I.ASC};this.props.onSort(r)}}},{key:"getOriginalRowIndex",value:function(e,t){var r=t;return e.columns&&n(e.columns[0],"content.props.children.props.propertyId.propertyId")?r=this.getLastChildPropertyIdRow(e.columns[0].content.props.children.props.propertyId,t):e.columns&&n(e.columns[0],"content.props.children.props.propertyId.index")?r=e.columns[0].content.props.children.props.propertyId.index:e.columns&&n(e.columns[0],"content.props.children.props.propertyId.row")?r=e.columns[0].content.props.children.props.propertyId.row:"number"==typeof e.rowKey&&(r=parseInt(e.rowKey,10)),r}},{key:"getLastChildPropertyIdRow",value:function(e,t){return void 0!==e.propertyId?this.getLastChildPropertyIdRow(e.propertyId):void 0!==e.row?e.row:t}},{key:"setCheckedAll",value:function(e){for(var t=!0,r=0;r<this.props.data.length;r++){var o=this.props.data[r],i=this.getOriginalRowIndex(o,r);if(e.indexOf(i)<0){t=!1;break}}this.state.checkedAllRows!==t&&this.setState({checkedAllRows:t})}},{key:"calculateColumnWidths",value:function(e,t){var r=t-12;this.props.rowSelection!==E.SINGLE&&(r-=40);var o,i=e.length,l=0,s=ne(e);try{for(s.s();!(o=s.n()).done;){var a=o.value;a.width&&("string"==typeof a.width&&a.width.includes("px")?(r-=parseInt(a.width,10),i--):l=Math.max(l,a.width))}}catch(e){s.e(e)}finally{s.f()}var n,c=[],p=Math.floor(r/i),d=[],u=0,h=ne(e);try{for(h.s();!(n=h.n()).done;){var f=n.value;f.width&&!isNaN(f.width)?(d.push(f.width/l),u+=f.width/l):d.push(null)}}catch(e){h.e(e)}finally{h.f()}for(var b=r/u,m=0,v=0;v<e.length;v++){var w=e[v];if(w.width)if("string"==typeof w.width&&w.width.includes("px"))c.push(Math.floor(parseInt(w.width,10))+"px"),m+=parseInt(w.width,10);else{var y=Math.floor(d[v]*b);c.push(y+"px"),m+=y}else c.push(p),m+=p}var g=t;if(this.props.rowSelection!==E.SINGLE&&(g-=40),m<g){var R=parseInt(c[0],10);c[0]=R+g-m+"px"}return c}},{key:"_updateTableWidth",value:function(e,t){this.state.tableWidth!==Math.floor(e-2)&&this.setState({tableWidth:Math.floor(e-2)})}},{key:"_adjustTableHeight",value:function(){if(!this.props.noAutoSize){var e=this.state.tableHeight,t=this.state.dynamicHeight,r=O+H;if(Array.isArray(this.props.data)&&this.props.data.length<this.state.rows)e=O*this.props.data.length+H+(this.props.selectedEditRow?r:0)+"rem";else if(this.state.rows>0)e=O*this.state.rows+H+(this.props.selectedEditRow?r:0)+"rem";else if(0===this.state.rows)e=H+"rem";else if(-1===this.state.rows&&this.flexibleTable){var o=void 0!==this.flexibleTableHeader?w.findDOMNode(this.flexibleTableHeader).getBoundingClientRect().height:0,i=this.findPropertyNodeHeight(this.flexibleTable,"properties-wf-children"),l=this.findPropertyNodeHeight(this.flexibleTable,"properties-primary-tab-panel");if(0===i&&0===l)e="100vh",t=-1;else{var s=0!==i?i:l;e="calc(".concat(s-o-50,"px - 3.5rem)"),t=s-o-50-56}}e!==this.state.tableHeight&&this.setState({tableHeight:e,dynamicHeight:t})}}},{key:"findPropertyNodeHeight",value:function(e,t){if(e&&e.parentNode&&e.parentNode.className&&e.parentNode.className.includes(t)){var r=w.findDOMNode(e.parentNode).getBoundingClientRect();return r?r.height:0}return e&&e.parentNode?this.findPropertyNodeHeight(e.parentNode,t):0}},{key:"sortHeaderClick",value:function(e){var t=e.dataKey,r=this.state.columnSortDir;void 0!==r[t]&&(Object.keys(r).forEach((function(e){e!==t&&(r[e]=I.NOT_SORTED)})),r[t]=r[t]===I.ASC?I.DESC:I.ASC,this.setState({columnSortDir:r,currentSortColumn:t}))}},{key:"handleFilterChange",value:function(e){this.props.onFilter&&this.props.onFilter(e.target.value)}},{key:"handleCheckedAllRows",value:function(e){var t=[],r=this.props.data;if(e){t=Array.from(this.props.selectedRows);for(var o=0;o<r.length;o++){var i=this.getOriginalRowIndex(r[o],o);t.push(i)}}t=Array.from(new Set(t)),this.props.updateRowSelections(t),this.setState({checkedAllRows:e})}},{key:"handleCheckedMultipleRows",value:function(e,t,r){var o,i=this.props.selectedRows?this.props.selectedRows:[];return o=e<t?Array.from({length:t-e+1},(function(t,r){return e+r})):Array.from({length:e-t+1},(function(e,r){return t+r})),i=i.filter((function(e){return!o.includes(e)})),r&&(i=i.concat(o)),i}},{key:"handleCheckedRow",value:function(e,t){var r=e.originalRowIndex,o=e.index,i=e.selected,l=e.isOverSelectOption;if(!this.props.data[o].disabled&&"function"==typeof this.props.updateRowSelections)if(l){var s=this.props.selectedRows?this.props.selectedRows:[];e.selectMultipleRows?(s=this.handleCheckedMultipleRows(e.lastCheckedRow,o,i),this.setCheckedAll(s)):i?(s=s.concat(r),this.setCheckedAll(s)):s&&(s=s.filter((function(e){return e!==r})),this.setState({checkedAllRows:!1})),s.sort((function(e,t){return e-t})),this.props.updateRowSelections(s)}else this.props.rowSelection===E.SINGLE&&this.props.updateRowSelections(e.index,t,this.props.data[e.index].rowKey)}},{key:"generateTableHeaderRow",value:function(e){for(var t=[],r="",i=0;i<this.props.columns.length;i++){var l=this.props.columns[i];void 0!==this.props.filterable&&this.props.filterable[0]===l.key&&(r=l.label);var s=Math.abs(parseInt(e[i],10)),a=void 0;"object"===o(l.label)?a=l.label.props.labelText:"string"==typeof l.label&&(a=l.label),t.push({key:l.key,label:l.label,width:s,description:l.description,headerLabel:a,resizable:l.resizable,operation:l.operation,staticWidth:!!l.staticWidth&&l.staticWidth})}return{headers:t,searchLabel:r}}},{key:"rowGetter",value:function(e){var t=e.index,r=this.props.data[t],o=this.getOriginalRowIndex(r,t),i={};if(r.columns)for(var l=0;l<r.columns.length;l++){var s=r.columns[l];i[s.column]=s.content}return Object.assign({},i,{loading:!1,index:t,originalRowIndex:o,rowKey:void 0!==r.rowKey?r.rowKey:this.props.scrollKey+"-row-"+t,disabled:r.disabled})}},{key:"rowHeight",value:function(e){return e.index,A}},{key:"render",value:function(){var t=this,r=this.state.tableWidth,o=this.calculateColumnWidths(this.props.columns,r),i=this.generateTableHeaderRow(o),l=i.headers,s=i.searchLabel,a=this.props.tableState===T.DISABLED,n=null;if(void 0!==this.props.filterable&&0!==this.props.filterable.length){var c=void 0!==this.props.searchPlaceholder?this.props.searchPlaceholder:this.props.intl.formatMessage({id:"table.search.placeholder",defaultMessage:V["table.search.placeholder"]},{column_name:s}),p=this.props.intl.formatMessage({id:"table.search.label",defaultMessage:V["table.search.label"]},{table_name:this.props.tableLabel});n=m.createElement("div",{className:N("properties-ft-search-container",{disabled:a})},m.createElement(R,{className:"properties-ft-search-text",placeholder:c,onChange:this.handleFilterChange,disabled:a,size:"sm",labelText:p,light:this.props.light}))}var d=-1;void 0!==this.props.scrollToRow&&null!==this.props.scrollToRow&&(d=this.props.scrollToRow);var u={};this.props.noAutoSize||(u={height:this.state.tableHeight});var h=this.props.showHeader?"properties-ft-container-absolute ":"properties-ft-container-absolute-noheader ",f=this.props.messageInfo?h:h+T.INFO,v=n||this.props.topRightPanel?m.createElement("div",{className:"properties-ft-table-header",ref:function(e){return t.flexibleTableHeader=e}},n,this.props.topRightPanel):null,w=b(this.props.data)?m.createElement("div",{className:"properties-ft-empty-table"},this.props.emptyTablePlaceholder):null,y=N("properties-ft-control-container",{"properties-light-disabled":!this.props.light}),g=0,k=2*H,C=k*M;-1!==this.state.rows&&this.state.tableHeight?g=(parseInt(this.state.tableHeight,10)-(this.props.selectedEditRow?k:0))*M:-1===this.state.rows&&this.state.dynamicHeight&&-1!==this.state.dynamicHeight&&(g=this.state.dynamicHeight-(this.props.selectedEditRow?C:0));return m.createElement("div",{"data-id":"properties-ft-"+this.props.scrollKey,className:y,ref:function(e){return t.flexibleTable=e}},v,m.createElement("div",{className:"properties-ft-container-panel"},m.createElement(G,{handleWidth:!0,onResize:this._updateTableWidth},m.createElement("div",{className:N("properties-ft-container-wrapper",this.props.messageInfo?this.props.messageInfo.type:""),style:u},m.createElement("div",{className:f},this.props.selectedEditRow,m.createElement(ae,e({tableLabel:this.props.tableLabel,tableHeight:g,columns:l,onHeaderClick:this.sortHeaderClick,rowCount:this.props.data.length,rowHeight:this.rowHeight,rowGetter:this.rowGetter,summaryTable:this.props.summaryTable,selectable:void 0!==this.props.updateRowSelections,rowSelection:this.props.rowSelection,disableHeader:!this.props.showHeader,onRowDoubleClick:this.props.onRowDoubleClick,rowsSelected:this.props.selectedRows,checkedAll:this.state.checkedAllRows,setRowsSelected:this.handleCheckedRow,setAllRowsSelected:this.handleCheckedAllRows,scrollKey:this.props.scrollKey,onSort:this.onSort,sortBy:this.state.currentSortColumn,sortColumns:this.state.columnSortDir,sortDirection:this.state.columnSortDir[this.state.currentSortColumn],tableState:this.props.tableState,light:this.props.light},-1!==d&&{scrollToIndex:d,scrollToAlignment:"center"})))))),w)}}]),c}(m.Component);de.defaultProps={showHeader:!0,light:!0,emptyTablePlaceholder:""};var ue=v(de);export{ue as F,X as T,V as d};
|
|
2
|
-
//# sourceMappingURL=flexible-table-
|
|
1
|
+
import{_ as e}from"./extends-093996c9.js";import{_ as t,a as r,b as o}from"./createClass-be661622.js";import{_ as i,a as l,b as s,c as a}from"./getPrototypeOf-3751add9.js";import{h as n,v as c,w as p,j as d,d as u,l as h,m as f,c as b}from"./isArrayLikeObject-c0bf3ab6.js";import m from"react";import{injectIntl as v}from"react-intl";import w from"react-dom";import{Checkbox as y,Loading as g,Search as R}from"carbon-components-react";import{y as k,_ as C,z as x,B as S,R as E,S as T,r as I,c as N,F as O,G as H,O as A,H as M}from"./_baseIteratee-2a601011.js";import{AutoSizer as D,Table as z,Column as L}from"react-virtualized";import B from"react-draggable";import{ArrowsVertical16 as P,ArrowDown16 as _,ArrowUp16 as j,Information16 as F}from"@carbon/icons-react";import W from"./lib/tooltip.es.js";import{v4 as K}from"uuid";import G from"react-resize-detector";var V={"subPanel.button.tooltip":"Edit","structureListEditor.addButton.label":"Add value","structureListEditor.removeButton.label":"Remove","structureTable.addButton.label":"Add columns","structureTable.removeButton.label":"Remove","fieldPicker.saveButton.label":"Select Fields for","fieldPicker.saveButton.modal.label":"Save and continue","fieldPicker.resetButton.label":"Reset ","fieldPicker.filter.label":"Filter:","fieldPicker.fieldColumn.label":"Field name","fieldPicker.schemaColumn.label":"Schema name","fieldPicker.dataTypeColumn.label":"Data type","fieldPicker.integer.label":"integer","fieldPicker.double.label":"double","fieldPicker.string.label":"string","fieldPicker.date.label":"date","fieldPicker.time.label":"time","fieldPicker.timestamp.label":"timestamp","flyout.applyButton.label":"OK","flyout.rejectButton.label":"Cancel","propertiesEdit.closeButton.label":"Close","propertiesEdit.applyButton.label":"Save","propertiesEdit.rejectButton.label":"Cancel","propertiesEdit.revertButton.label":"Revert","propertiesEdit.resizeButton.expand.label":"Expand","propertiesEdit.resizeButton.contract.label":"Contract","properties.revert.message":"Click Revert to go back to the previous screen or click Close to exit the pane. Then try your operation again.","properties.close.message":"Click Close to exit the pane. Then try your operation again.","properties.support.message":"If the problem persists, contact support.","properties.unexpected.message":"Oops, the pane didn't load.","table.search.header":"View in tables","table.search.placeholder":"Find in column {column_name}","table.search.label":"Search in {table_name} table","summary.longTable.placeholder":"More than ten fields...","alerts.tab.title":"Alerts","title.editor.label":"edit title","title.editor.helpButton.label":"help","table.summary.error":"There are {errorMsgCount} error cells. ","table.summary.warning":"There are {warningMsgCount} warning cells. ","control.summary.error":"There are {errorMsgCount} parameters with errors. ","control.summary.warning":"There are {warningMsgCount} parameters with warnings. ","control.summary.error.warning":"There are {errorMsgCount} parameters with errors and {warningMsgCount} parameters with warnings.","required.error":"You must enter a value for {label}.","datetime.format.error":"Invalid {role}. Format should be {format}.","invalid.field.error":"Invalid {label}, field not found in data set.","invalid.number.error":"Number is not valid.","expression.validate.label":"Validate","expression.validating.label":"Validating","expression.builder.title":"Expression Builder","expression.builder.icon.description":"launch expression builder","expression.builder.label":"Expression","expression.fields.table.label":"Fields table","expression.values.table.label":"Values table","expression.fields.empty.table.label":"No fields found","expression.values.empty.table.label":"No values found","expression.functions.table.label":"Functions table","expression.fields.dropdown":"Fields","expression.fields.title":"Fields","expression.values.title":"Values","expression.field.column":"Field","expression.field.column.description":"","expression.storage.column":"Storage","expression.value.column":"Value","expression.value.column.description":"","expression.function.column":"Function","expression.return.column":"Return","expression.recently.used.column":"Item","expression.field.tab":"Fields","expression.functions.tab":"Functions","expression.recently.used":"Recently Used","expression.all.functions":"All Functions","expression.min.label":"Min","expression.minimize.label":"Minimize","expression.max.label":"Max","expression.maximize.label":"Maximize","toggle.on.label":"On","toggle.off.label":"Off","passwordShow.tooltip":"Show password","passwordHide.tooltip":"Hide password","expression.no.functions":"No functions found.","multi.selected.row.label":"rows selected.","multi.selected.row.action":"Changing a value in this row will change the value in all allowed selected rows.","datetimefield.format.error.message":"Invalid format object provided. Check input definitions.","datepickerRangeStart.default.label":"Start","datepickerRangeEnd.default.label":"End","editorform.group.type.error":"(Unknown group type '{group.groupType()}')","moveable.table.button.top":"Move to top","moveable.table.button.up":"Move up","moveable.table.button.down":"Move down","moveable.table.button.bottom":"Move to bottom","list.table.label":"Values","dropdown.tooltip.openMenu":"Open menu","dropdown.tooltip.closeMenu":"Close menu","dropdown.tooltip.clear.all":"Clear all","dropdown.tooltip.clear.selection":"Clear selection","truncate.long.string.error":"These values exceed the display limit of {truncate_limit} characters and can't be edited.","properties.label":"{label} Properties","properties.error.label":"Error in properties","readonlytable.edit.button.label":"Edit","toggletext.icon.description":"{toggletext_label} Icon","multiselect.dropdown.empty.label":"None selected","multiselect.dropdown.options.selected.label":"options selected","virtualizedTable.header.checkbox.label":"Select all {header_checkbox_label}","virtualizedTable.row.checkbox.label":"Select row {row_index} from {table_label}","properties.empty.table.text":'To begin, click "{button_label}"',"label.indicator.required":"(required)","label.indicator.optional":"(optional)"};function U(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,o=l(e);if(t){var i=l(this).constructor;r=Reflect.construct(o,arguments,i)}else r=o.apply(this,arguments);return s(this,r)}}var q=function(e){i(s,e);var l=U(s);function s(){return t(this,s),l.apply(this,arguments)}return r(s,[{key:"render",value:function(){var e=this,t=this.props.tooltipText,r=this.props.truncatedRef;"object"!==o(this.props.tooltipText)&&(t=String(this.props.tooltipText)),this.props.content&&this.props.content.type===y&&this.tooltipRef&&this.tooltipRef.firstChild&&(r=this.tooltipRef.firstChild.lastChild);var i=m.createElement("div",{className:"properties-tooltips"},t);return m.createElement("div",{className:"properties-truncated-tooltip"},m.createElement(W,{id:"properties",tip:i,direction:"bottom",className:"properties-tooltips",disable:!n(this.props,"disabled")||this.props.disabled,showToolTipIfTruncated:!0,truncatedRef:r},m.createElement("div",{ref:function(t){return e.tooltipRef=t}},this.props.content)))}}]),s}(m.Component),X=q,Y=c,$=k,J=C;var Q=function(e,t){var r={};return t=J(t),$(e,(function(e,o,i){Y(r,o,t(e,o,i))})),r},Z=p,ee=d,te=C,re=h,oe=f,ie=u((function(e,t){var r=oe(t);return re(r)&&(r=void 0),re(e)?Z(e,ee(t,1,re,!0),te(r)):[]}));function le(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,o=l(e);if(t){var i=l(this).constructor;r=Reflect.construct(o,arguments,i)}else r=o.apply(this,arguments);return s(this,r)}}var se=function(o){i(s,o);var l=le(s);function s(e,r){var o;return t(this,s),(o=l.call(this,e,r)).state={rowCount:o.props.rowCount,columns:o.props.columns,columnResized:!1},o.virtualizedTableRef=m.createRef(),o.lastChecked=b(e.rowsSelected)?null:e.rowsSelected.slice(-1).pop(),o.isOverSelectOption=!1,o.mouseEventCalled=!1,o.keyBoardEventCalled=!1,o.cellRenderer=o.cellRenderer.bind(a(o)),o.selectAll=o.selectAll.bind(a(o)),o.headerRowRenderer=o.headerRowRenderer.bind(a(o)),o.headerColRenderer=o.headerColRenderer.bind(a(o)),o.onRowClick=o.onRowClick.bind(a(o)),o.overSelectOption=o.overSelectOption.bind(a(o)),o.resizeColumn=o.resizeColumn.bind(a(o)),o.uuid=K(),o}return r(s,[{key:"componentDidUpdate",value:function(){"function"==typeof this.props.rowHeight&&this.recomputeRowHeights()}},{key:"onRowClick",value:function(e,t,r){if("bx--select-option"===e.target.className)e.stopPropagation();else{var o=!this.isRowSelected(t.originalRowIndex);"function"==typeof this.props.setRowsSelected&&(this.props.setRowsSelected({index:r,originalRowIndex:t.originalRowIndex,selected:o,isOverSelectOption:this.isOverSelectOption,selectMultipleRows:!!e.shiftKey&&e.shiftKey,lastCheckedRow:null===this.lastChecked?0:this.lastChecked},e),this.lastChecked=t.index)}}},{key:"onRowDoubleClick",value:function(e,t,r){this.props.onRowDoubleClick&&this.props.onRowDoubleClick(e,t,r)}},{key:"getCheckboxLabelColumnIndex",value:function(e){for(var t=0;t<e.length;t++)if("index"!==e[t].operation)return t;return 0}},{key:"getColumnIndex",value:function(e,t){return e.findIndex((function(e){return e.key===t}))}},{key:"getColumnWiseDeltas",value:function(e,t){var r={};if(e.length>0){e.sort((function(e,t){return e.width-t.width}));for(var o=t,i=0;i<e.length;i++){var l=e.slice(i).reduce((function(e,t){return e+t.width}),0),s=Math.round(e[i].width*o/l);e[i].headerLabel.length>0&&e[i].width-s<x?s=e[i].width-x:e[i].width-s<S&&(s=e[i].width-S),o-=s,r[e[i].key]=s}if(o>0)return Q(r,(function(){return 0}))}return r}},{key:"isRowSelected",value:function(e){return!!this.props.rowsSelected&&this.props.rowsSelected.indexOf(e)>-1}},{key:"isLastColumn",value:function(e){var t=this.getColumnIndex(this.props.columns,e)===this.props.columns.length-1;return t}},{key:"selectAll",value:function(e){this.props.setAllRowsSelected(e)}},{key:"cellRenderer",value:function(e){var t=e.cellData;return null==t?"":t}},{key:"cellRendererHTML",value:function(e){var t=e.cellData;return null==t?"":m.createElement("div",{dangerouslySetInnerHTML:{__html:t}})}},{key:"recomputeRowHeights",value:function(e){this.virtualizedTableRef&&this.virtualizedTableRef.current&&this.virtualizedTableRef.current.recomputeRowHeights(e)}},{key:"headerRowRenderer",value:function(e,t){var r=t.className,o=t.columns,i=t.style,l=void 0===this.props.columns||0===this.props.columns.length?0:this.getCheckboxLabelColumnIndex(this.props.columns),s=void 0===this.props.columns||0===this.props.columns.length?"":this.props.columns[l].headerLabel,a=this.props.intl.formatMessage({id:"virtualizedTable.header.checkbox.label",defaultMessage:V["virtualizedTable.header.checkbox.label"]},{header_checkbox_label:s}),n=this.props.selectable&&this.props.rowSelection!==E.SINGLE?m.createElement("div",{role:"checkbox","aria-checked":this.props.checkedAll,className:"properties-vt-header-checkbox"},m.createElement(y,{id:"properties-vt-hd-cb-".concat(this.uuid,"-").concat(e),onChange:this.selectAll,checked:this.props.checkedAll,labelText:a,hideLabel:!0})):"";return m.createElement("div",{className:r,"data-role":"properties-header-row",role:"row",style:i},n,o)}},{key:"headerColRenderer",value:function(e){var t=this,r=e.columnData,o=e.dataKey,i=e.disableSort,l=e.label;e.sortBy,e.sortDirection;var s=null;if(void 0!==this.props.sortColumns[o]){var a=null;switch(this.props.sortColumns[o]){case I.ASC:a=m.createElement(j,{disabled:this.props.tableState===T.DISABLED});break;case I.DESC:a=m.createElement(_,{disabled:this.props.tableState===T.DISABLED});break;default:a=m.createElement(P,{disabled:this.props.tableState===T.DISABLED})}s=m.createElement("span",{className:"properties-ft-column-sort-icon"},a)}var n=b(r.description)?null:m.createElement("div",{className:"properties-vt-info-icon-tip"},m.createElement(W,{id:"properties-tooltip-info",tip:r.description,direction:"bottom",className:"properties-tooltips",showToolTipOnClick:!0},m.createElement(F,{className:"properties-vt-info-icon"}))),c=r.resizable&&!this.isLastColumn(o)?m.createElement(B,{axis:"x",defaultClassName:"properties-vt-header-resize",defaultClassNameDragging:"properties-vt-header-resize-active",onDrag:function(e,r){var i=r.deltaX;t.resizeColumn({dataKey:o,deltaX:i})},position:{x:0},zIndex:999},m.createElement("div",{role:"button",tabIndex:"0","aria-label":"Resize column"})):"",p="string"==typeof l?m.createElement("span",null,l):l,d=m.createElement("div",{className:"properties-vt-label-tip-icon"},m.createElement(X,{tooltipText:r.headerLabel,content:p,disabled:r.disabled}),n);return m.createElement("div",{"data-id":"properties-vt-header-".concat(o),className:N({"properties-vt-column-with-resize":""!==c,"properties-vt-column-without-resize":""===c})},m.createElement("div",{className:N("properties-vt-column properties-tooltips-container",{"sort-column-active":o===this.props.sortBy})},d,!1===i&&s),c)}},{key:"resizeColumn",value:function(e){var t=this,r=e.dataKey,o=e.deltaX;this.setState((function(e){var i=e.columns,l=t.getColumnIndex(i,r),s=i.slice(l+1).filter((function(e){return!e.staticWidth})).filter((function(e){return!(o>=0)||(e.headerLabel.length>0?e.width>x:e.width>S)})),a=t.getColumnWiseDeltas(s,o),n=Object.keys(a),c=Object.values(a).every((function(e){return 0===e}));return i[l].width+o>x&&!b(a)&&!c&&(i[l].width+=o,n.forEach((function(e){var t=i.findIndex((function(t){return t.key===e}));i[t].width-=a[e]}))),{columnResized:!0,columns:i}}))}},{key:"overSelectOption",value:function(e){"mouseenter"!==e.type||this.keyBoardEventCalled?"mouseleave"===e.type&&this.mouseEventCalled?(this.mouseEventCalled=!1,this.isOverSelectOption=!this.isOverSelectOption):"focus"!==e.type||this.mouseEventCalled?"blur"===e.type&&this.keyBoardEventCalled&&(this.keyBoardEventCalled=!1,this.isOverSelectOption=!this.isOverSelectOption):(this.keyBoardEventCalled=!0,this.isOverSelectOption=!this.isOverSelectOption):(this.mouseEventCalled=!0,this.isOverSelectOption=!this.isOverSelectOption)}},{key:"rowRenderer",value:function(e,t){var r=this,o=t.className,i=t.columns,l=t.index,s=t.key,a=t.rowData,n=t.style,c="",p=!1,d="boolean"==typeof a.disabled&&a.disabled;if("function"==typeof this.props.rowHeight&&0===this.props.rowHeight({index:l}))return null;if(this.props.selectable){var u=this.isRowSelected(a.originalRowIndex);if(p=this.props.selectable&&u,this.props.rowSelection!==E.SINGLE){var h=this.props.intl.formatMessage({id:"virtualizedTable.row.checkbox.label",defaultMessage:V["virtualizedTable.row.checkbox.label"]},{row_index:l+1,table_label:this.props.tableLabel?this.props.tableLabel:""});c=m.createElement("div",{className:"properties-vt-row-checkbox",role:"gridcell",onMouseEnter:function(e){return r.overSelectOption(e)},onMouseLeave:function(e){return r.overSelectOption(e)},onFocus:function(e){return r.overSelectOption(e)},onBlur:function(e){return r.overSelectOption(e)},onKeyDown:function(e){"Space"!==e.code&&"Enter"!==e.code||r.onRowClick(e,a,l)}},m.createElement(y,{id:"properties-vt-row-cb-".concat(this.uuid,"-").concat(e,"-").concat(l),key:"properties-vt-row-cb-".concat(e,"-").concat(l),labelText:h,hideLabel:!0,checked:u,disabled:d}))}}if(this.props.summaryTable&&(c=m.createElement("div",{className:"properties-vt-row-checkbox"})),!0===a.loading)return m.createElement("div",{className:o,key:s,"data-role":"properties-loading-row",role:"row",style:n},m.createElement(g,{className:"properties-vt-small-loading",small:!0,withOverlay:!1}));var f=parseInt(n.width,10)+"px",b=Object.assign({},n,{width:f});return m.createElement("div",{style:{},key:s,className:"properties-vt-double-click",onDoubleClick:function(e){return r.onRowDoubleClick(e,a.rowKey,l)}},m.createElement("div",{className:N(o,{"properties-vt-row-selected":p},{"properties-vt-row-disabled":d},{"properties-vt-row-non-interactive":!this.props.selectable}),"data-role":"properties-data-row",role:"row",style:b,onMouseDown:function(e){return r.onRowClick(e,a,l)}},c,i))}},{key:"render",value:function(){var t=this;return m.createElement("div",{className:"properties-vt"},m.createElement("div",{className:N("properties-vt-autosizer",{"properties-vt-single-selection":this.props.rowSelection&&this.props.rowSelection===E.SINGLE,"properties-light-disabled":!this.props.light})},m.createElement(D,null,(function(r){var o=r.height,i=r.width;return m.createElement(z,{ref:t.virtualizedTableRef,width:i||500,height:t.props.tableHeight||o||2e3,className:"properties-autosized-vt","aria-label":t.props.tableLabel?t.props.tableLabel:"",disableHeader:t.props.disableHeader,headerClassName:"properties-autosized-vt-header",headerHeight:32,headerRowRenderer:t.headerRowRenderer.bind(t,t.props.scrollKey),onHeaderClick:t.props.onHeaderClick,rowClassName:"properties-vt-row-class",rowHeight:t.props.rowHeight?t.props.rowHeight:32,rowCount:t.state.rowCount,rowGetter:t.props.rowGetter,rowRenderer:t.rowRenderer.bind(t,t.props.scrollKey),scrollToIndex:t.props.scrollToIndex,scrollToAlignment:t.props.scrollToAlignment,sort:t.props.onSort,sortDirection:t.props.sortDirection,tabIndex:-1},t.state.columns.map((function(r){return m.createElement(L,e({key:r.key,label:r.label,dataKey:r.key,width:r.width,columnData:r,disableSort:void 0===t.props.sortColumns[r.key],cellRenderer:r.isHTML?t.cellRendererHTML:t.cellRenderer,headerRenderer:t.headerColRenderer},r.minWidth&&{minWidth:r.minWidth}))})))}))))}}],[{key:"getDerivedStateFromProps",value:function(e,t){var r={};e.rowCount!==t.rowCount&&(r.rowCount=e.rowCount);var o=t.columns.reduce((function(e,t){return t.width+e}),0)!==e.columns.reduce((function(e,t){return t.width+e}),0);return t.columnResized&&b(ie(e.columns,t.columns,"headerLabel"))&&!o||(r.columns=e.columns),r}}]),s}(m.Component);se.defaultProps={disableHeader:!1};var ae=v(se);function ne(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return ce(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ce(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var o=0,i=function(){};return{s:i,n:function(){return o>=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var l,s=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return s=e.done,e},e:function(e){a=!0,l=e},f:function(){try{s||null==r.return||r.return()}finally{if(a)throw l}}}}function ce(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,o=new Array(t);r<t;r++)o[r]=e[r];return o}function pe(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,o=l(e);if(t){var i=l(this).constructor;r=Reflect.construct(o,arguments,i)}else r=o.apply(this,arguments);return s(this,r)}}var de=function(l){i(c,l);var s=pe(c);function c(e){var r;t(this,c);var o={};if(void 0!==(r=s.call(this,e)).props.sortable)for(var i=0;i<r.props.sortable.length;i++){o[r.props.sortable[i]]=I.NOT_SORTED}return r.state={checkedAllRows:!1,columnSortDir:o,currentSortColumn:"",tableWidth:0,tableHeight:0,rows:void 0!==e.rows?e.rows:5.5,dynamicHeight:null},r.rowHeight=r.rowHeight.bind(a(r)),r.rowGetter=r.rowGetter.bind(a(r)),r.getOriginalRowIndex=r.getOriginalRowIndex.bind(a(r)),r.getLastChildPropertyIdRow=r.getLastChildPropertyIdRow.bind(a(r)),r.calculateColumnWidths=r.calculateColumnWidths.bind(a(r)),r.handleFilterChange=r.handleFilterChange.bind(a(r)),r.onSort=r.onSort.bind(a(r)),r.sortHeaderClick=r.sortHeaderClick.bind(a(r)),r._updateTableWidth=r._updateTableWidth.bind(a(r)),r._adjustTableHeight=r._adjustTableHeight.bind(a(r)),r.handleCheckedRow=r.handleCheckedRow.bind(a(r)),r.handleCheckedAllRows=r.handleCheckedAllRows.bind(a(r)),r.handleCheckedMultipleRows=r.handleCheckedMultipleRows.bind(a(r)),r}return r(c,[{key:"componentDidMount",value:function(){this._adjustTableHeight(),window.addEventListener("resize",this._adjustTableHeight),this.tableNode=w.findDOMNode(this.refs.table)}},{key:"componentDidUpdate",value:function(e,t){e.rows===this.props.rows&&e.columns===this.props.columns&&e.noAutoSize===this.props.noAutoSize||this._adjustTableHeight(),this.props.selectedRows&&!b(this.props.data)&&this.setCheckedAll(this.props.selectedRows),this.tableNode=w.findDOMNode(this.refs.table)}},{key:"componentWillUnmount",value:function(){window.removeEventListener("resize",this._adjustTableHeight)}},{key:"onSort",value:function(e){var t=e.sortBy;if(this.props.onSort){var r={column:t,direction:this.state.columnSortDir[t]===I.ASC?I.DESC:I.ASC};this.props.onSort(r)}}},{key:"getOriginalRowIndex",value:function(e,t){var r=t;return e.columns&&n(e.columns[0],"content.props.children.props.propertyId.propertyId")?r=this.getLastChildPropertyIdRow(e.columns[0].content.props.children.props.propertyId,t):e.columns&&n(e.columns[0],"content.props.children.props.propertyId.index")?r=e.columns[0].content.props.children.props.propertyId.index:e.columns&&n(e.columns[0],"content.props.children.props.propertyId.row")?r=e.columns[0].content.props.children.props.propertyId.row:"number"==typeof e.rowKey&&(r=parseInt(e.rowKey,10)),r}},{key:"getLastChildPropertyIdRow",value:function(e,t){return void 0!==e.propertyId?this.getLastChildPropertyIdRow(e.propertyId):void 0!==e.row?e.row:t}},{key:"setCheckedAll",value:function(e){for(var t=!0,r=0;r<this.props.data.length;r++){var o=this.props.data[r],i=this.getOriginalRowIndex(o,r);if(e.indexOf(i)<0){t=!1;break}}this.state.checkedAllRows!==t&&this.setState({checkedAllRows:t})}},{key:"calculateColumnWidths",value:function(e,t){var r=t-12;this.props.rowSelection!==E.SINGLE&&(r-=40);var o,i=e.length,l=0,s=ne(e);try{for(s.s();!(o=s.n()).done;){var a=o.value;a.width&&("string"==typeof a.width&&a.width.includes("px")?(r-=parseInt(a.width,10),i--):l=Math.max(l,a.width))}}catch(e){s.e(e)}finally{s.f()}var n,c=[],p=Math.floor(r/i),d=[],u=0,h=ne(e);try{for(h.s();!(n=h.n()).done;){var f=n.value;f.width&&!isNaN(f.width)?(d.push(f.width/l),u+=f.width/l):d.push(null)}}catch(e){h.e(e)}finally{h.f()}for(var b=r/u,m=0,v=0;v<e.length;v++){var w=e[v];if(w.width)if("string"==typeof w.width&&w.width.includes("px"))c.push(Math.floor(parseInt(w.width,10))+"px"),m+=parseInt(w.width,10);else{var y=Math.floor(d[v]*b);c.push(y+"px"),m+=y}else c.push(p),m+=p}var g=t;if(this.props.rowSelection!==E.SINGLE&&(g-=40),m<g){var R=parseInt(c[0],10);c[0]=R+g-m+"px"}return c}},{key:"_updateTableWidth",value:function(e,t){this.state.tableWidth!==Math.floor(e-2)&&this.setState({tableWidth:Math.floor(e-2)})}},{key:"_adjustTableHeight",value:function(){if(!this.props.noAutoSize){var e=this.state.tableHeight,t=this.state.dynamicHeight,r=O+H;if(Array.isArray(this.props.data)&&this.props.data.length<this.state.rows)e=(O*this.props.data.length+H+(this.props.selectedEditRow?r:0))*A;else if(this.state.rows>0)e=(O*this.state.rows+H+(this.props.selectedEditRow?r:0))*A;else if(0===this.state.rows)e=H*A;else if(-1===this.state.rows&&this.flexibleTable){var o=void 0!==this.flexibleTableHeader?w.findDOMNode(this.flexibleTableHeader).getBoundingClientRect().height:0,i=this.findPropertyNodeHeight(this.flexibleTable,"properties-wf-children"),l=this.findPropertyNodeHeight(this.flexibleTable,"properties-primary-tab-panel");if(0===i&&0===l)e="100vh",t=-1;else{var s=0!==i?i:l;e="calc(".concat(s-o-50,"px - ").concat(3.5*A,"px)"),t=s-o-50-56}}e!==this.state.tableHeight&&this.setState({tableHeight:e,dynamicHeight:t})}}},{key:"findPropertyNodeHeight",value:function(e,t){if(e&&e.parentNode&&e.parentNode.className&&e.parentNode.className.includes(t)){var r=w.findDOMNode(e.parentNode).getBoundingClientRect();return r?r.height:0}return e&&e.parentNode?this.findPropertyNodeHeight(e.parentNode,t):0}},{key:"sortHeaderClick",value:function(e){var t=e.dataKey,r=this.state.columnSortDir;void 0!==r[t]&&(Object.keys(r).forEach((function(e){e!==t&&(r[e]=I.NOT_SORTED)})),r[t]=r[t]===I.ASC?I.DESC:I.ASC,this.setState({columnSortDir:r,currentSortColumn:t}))}},{key:"handleFilterChange",value:function(e){this.props.onFilter&&this.props.onFilter(e.target.value)}},{key:"handleCheckedAllRows",value:function(e){var t=[],r=this.props.data;if(e){t=Array.from(this.props.selectedRows);for(var o=0;o<r.length;o++){var i=this.getOriginalRowIndex(r[o],o);t.push(i)}}t=Array.from(new Set(t)),this.props.updateRowSelections(t),this.setState({checkedAllRows:e})}},{key:"handleCheckedMultipleRows",value:function(e,t,r){var o,i=this.props.selectedRows?this.props.selectedRows:[];return o=e<t?Array.from({length:t-e+1},(function(t,r){return e+r})):Array.from({length:e-t+1},(function(e,r){return t+r})),i=i.filter((function(e){return!o.includes(e)})),r&&(i=i.concat(o)),i}},{key:"handleCheckedRow",value:function(e,t){var r=e.originalRowIndex,o=e.index,i=e.selected,l=e.isOverSelectOption;if(!this.props.data[o].disabled&&"function"==typeof this.props.updateRowSelections)if(l){var s=this.props.selectedRows?this.props.selectedRows:[];e.selectMultipleRows?(s=this.handleCheckedMultipleRows(e.lastCheckedRow,o,i),this.setCheckedAll(s)):i?(s=s.concat(r),this.setCheckedAll(s)):s&&(s=s.filter((function(e){return e!==r})),this.setState({checkedAllRows:!1})),s.sort((function(e,t){return e-t})),this.props.updateRowSelections(s)}else this.props.rowSelection===E.SINGLE&&this.props.updateRowSelections(e.index,t,this.props.data[e.index].rowKey)}},{key:"generateTableHeaderRow",value:function(e){for(var t=[],r="",i=0;i<this.props.columns.length;i++){var l=this.props.columns[i];void 0!==this.props.filterable&&this.props.filterable[0]===l.key&&(r=l.label);var s=Math.abs(parseInt(e[i],10)),a=void 0;"object"===o(l.label)?a=l.label.props.labelText:"string"==typeof l.label&&(a=l.label),t.push({key:l.key,label:l.label,width:s,description:l.description,headerLabel:a,resizable:l.resizable,operation:l.operation,staticWidth:!!l.staticWidth&&l.staticWidth})}return{headers:t,searchLabel:r}}},{key:"rowGetter",value:function(e){var t=e.index,r=this.props.data[t],o=this.getOriginalRowIndex(r,t),i={};if(r.columns)for(var l=0;l<r.columns.length;l++){var s=r.columns[l];i[s.column]=s.content}return Object.assign({},i,{loading:!1,index:t,originalRowIndex:o,rowKey:void 0!==r.rowKey?r.rowKey:this.props.scrollKey+"-row-"+t,disabled:r.disabled})}},{key:"rowHeight",value:function(e){return e.index,M}},{key:"render",value:function(){var t=this,r=this.state.tableWidth,o=this.calculateColumnWidths(this.props.columns,r),i=this.generateTableHeaderRow(o),l=i.headers,s=i.searchLabel,a=this.props.tableState===T.DISABLED,n=null;if(void 0!==this.props.filterable&&0!==this.props.filterable.length){var c=void 0!==this.props.searchPlaceholder?this.props.searchPlaceholder:this.props.intl.formatMessage({id:"table.search.placeholder",defaultMessage:V["table.search.placeholder"]},{column_name:s}),p=this.props.intl.formatMessage({id:"table.search.label",defaultMessage:V["table.search.label"]},{table_name:this.props.tableLabel});n=m.createElement("div",{className:N("properties-ft-search-container",{disabled:a})},m.createElement(R,{className:"properties-ft-search-text",placeholder:c,onChange:this.handleFilterChange,disabled:a,size:"sm",labelText:p,light:this.props.light}))}var d=-1;void 0!==this.props.scrollToRow&&null!==this.props.scrollToRow&&(d=this.props.scrollToRow);var u={};this.props.noAutoSize||(u={height:this.state.tableHeight});var h=this.props.showHeader?"properties-ft-container-absolute ":"properties-ft-container-absolute-noheader ",f=this.props.messageInfo?h:h+T.INFO,v=n||this.props.topRightPanel?m.createElement("div",{className:"properties-ft-table-header",ref:function(e){return t.flexibleTableHeader=e}},n,this.props.topRightPanel):null,w=b(this.props.data)?m.createElement("div",{className:"properties-ft-empty-table"},this.props.emptyTablePlaceholder):null,y=N("properties-ft-control-container",{"properties-light-disabled":!this.props.light}),g=0,k=2*H,C=k*A;-1!==this.state.rows&&this.state.tableHeight?g=parseInt(this.state.tableHeight,10)-(this.props.selectedEditRow?k:0):-1===this.state.rows&&this.state.dynamicHeight&&-1!==this.state.dynamicHeight&&(g=this.state.dynamicHeight-(this.props.selectedEditRow?C:0));return m.createElement("div",{"data-id":"properties-ft-"+this.props.scrollKey,className:y,ref:function(e){return t.flexibleTable=e}},v,m.createElement("div",{className:"properties-ft-container-panel"},m.createElement(G,{handleWidth:!0,onResize:this._updateTableWidth},m.createElement("div",{className:N("properties-ft-container-wrapper",this.props.messageInfo?this.props.messageInfo.type:""),style:u},m.createElement("div",{className:f},this.props.selectedEditRow,m.createElement(ae,e({tableLabel:this.props.tableLabel,tableHeight:g,columns:l,onHeaderClick:this.sortHeaderClick,rowCount:this.props.data.length,rowHeight:this.rowHeight,rowGetter:this.rowGetter,summaryTable:this.props.summaryTable,selectable:void 0!==this.props.updateRowSelections,rowSelection:this.props.rowSelection,disableHeader:!this.props.showHeader,onRowDoubleClick:this.props.onRowDoubleClick,rowsSelected:this.props.selectedRows,checkedAll:this.state.checkedAllRows,setRowsSelected:this.handleCheckedRow,setAllRowsSelected:this.handleCheckedAllRows,scrollKey:this.props.scrollKey,onSort:this.onSort,sortBy:this.state.currentSortColumn,sortColumns:this.state.columnSortDir,sortDirection:this.state.columnSortDir[this.state.currentSortColumn],tableState:this.props.tableState,light:this.props.light},-1!==d&&{scrollToIndex:d,scrollToAlignment:"center"})))))),w)}}]),c}(m.Component);de.defaultProps={showHeader:!0,light:!0,emptyTablePlaceholder:""};var ue=v(de);export{ue as F,X as T,V as d};
|
|
2
|
+
//# sourceMappingURL=flexible-table-a7325a4e.js.map
|