@rio-cloud/rio-uikit 0.16.0-beta-4 → 0.16.1-beta-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/lib/components/pager/Pager.js +114 -0
  2. package/lib/components/selects/Select.js +18 -14
  3. package/lib/components/table/TableSettingsColumnButtons.js +7 -6
  4. package/lib/components/table/TableSettingsColumnDetails.js +58 -103
  5. package/lib/components/table/TableSettingsDialog.js +26 -32
  6. package/lib/components/table/TableSettingsDialogFooter.js +15 -13
  7. package/lib/components/table/TableSettingsListContainer.js +55 -20
  8. package/lib/components/table/TableSettingsListItem.js +66 -27
  9. package/lib/components/table/tableSettingsPropTypes.js +18 -0
  10. package/lib/es/Pager.d.ts +11 -0
  11. package/lib/es/Pager.js +15 -0
  12. package/lib/index.d.ts +2 -0
  13. package/lib/index.js +8 -0
  14. package/lib/style/css/_exports/rio-buyButton.less +1 -1
  15. package/lib/style/css/_exports/rio-uikit-core.less +5 -1
  16. package/lib/style/css/_exports/rio-website.less +15 -10
  17. package/lib/style/css/_exports/vw-uikit.less +1 -1
  18. package/lib/style/css/components/ApplicationHeader.less +1 -1
  19. package/lib/style/css/components/AssetTree.less +2 -2
  20. package/lib/style/css/components/Dialog.less +13 -11
  21. package/lib/style/css/components/Dropdown.less +0 -1
  22. package/lib/style/css/components/Select.less +1 -0
  23. package/lib/style/css/components/Tooltip.less +0 -39
  24. package/lib/style/css/design/list-group.less +7 -2
  25. package/lib/style/css/design/responsive/_imports.less +0 -1
  26. package/lib/style/css/design/responsive/flexgrid.less +14 -14
  27. package/lib/style/css/design/responsive/position.less +9 -8
  28. package/lib/style/css/design/responsive/sizing.less +0 -19
  29. package/lib/style/css/design/sizing.less +18 -0
  30. package/lib/style/css/design/tables.less +1 -0
  31. package/lib/style/css/design/theme.less +6 -0
  32. package/lib/style/css/design/visibility.less +186 -0
  33. package/lib/style/css/filter/_imports.less +1 -0
  34. package/lib/style/css/filter/blur.less +17 -0
  35. package/lib/style/fonts/rioglyph/rioglyph.less +11 -1
  36. package/lib/style/fonts/rioglyph/rioglyph.svg +20 -8
  37. package/lib/style/fonts/rioglyph/rioglyph.ttf +0 -0
  38. package/lib/style/fonts/rioglyph/rioglyph.woff +0 -0
  39. package/lib/types.ts +15 -0
  40. package/lib/version.json +1 -1
  41. package/package.json +11 -9
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = void 0;
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _propTypes = _interopRequireDefault(require("prop-types"));
21
+
22
+ var _classnames = _interopRequireDefault(require("classnames"));
23
+
24
+ var _excluded = ["title", "label", "alignRight", "variant", "disabled", "onClick", "className"];
25
+
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+
28
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
+
30
+ var Pager = function Pager(props) {
31
+ var title = props.title,
32
+ label = props.label,
33
+ alignRight = props.alignRight,
34
+ variant = props.variant,
35
+ disabled = props.disabled,
36
+ onClick = props.onClick,
37
+ className = props.className,
38
+ remainingProps = (0, _objectWithoutProperties2.default)(props, _excluded);
39
+
40
+ var _useState = (0, _react.useState)(false),
41
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
42
+ isHover = _useState2[0],
43
+ setIsHover = _useState2[1];
44
+
45
+ var handleEnter = function handleEnter() {
46
+ return !disabled && setIsHover(true);
47
+ };
48
+
49
+ var handleLeave = function handleLeave() {
50
+ return !disabled && setIsHover(false);
51
+ };
52
+
53
+ var isCompactVariant = variant === Pager.VARIANT_COMPACT;
54
+ var wrapperClassesBase = (0, _classnames.default)('Pager', 'bg-white', 'border', 'display-flex justify-space-between align-items-center', isHover && 'border-color-highlight', alignRight && 'flex-row-reverse', disabled && 'pointer-events-none', 'cursor-pointer user-select-none');
55
+ var iconClassesBase = (0, _classnames.default)('rioplyph', disabled ? 'text-color-light' : 'text-color-darker', isHover && 'text-color-highlight');
56
+ var titleClassesBase = (0, _classnames.default)(disabled ? 'text-color-light' : 'text-color-darker', isHover && 'text-color-highlight'); // The compact version has a slightly different markup and different classes for the
57
+ // individual parts, hence we extend the base classes
58
+
59
+ if (isCompactVariant) {
60
+ var wrapperClassesCompact = (0, _classnames.default)(wrapperClassesBase, 'rounded-circle', 'padding-y-5 padding-x-15', 'width-auto', className);
61
+ var iconClassesCompact = (0, _classnames.default)(iconClassesBase, alignRight ? 'rioglyph-chevron-left margin-right-5' : 'rioglyph-chevron-right margin-left-5', 'text-size-10');
62
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, remainingProps, {
63
+ className: wrapperClassesCompact,
64
+ onMouseEnter: handleEnter,
65
+ onMouseLeave: handleLeave,
66
+ onClick: onClick
67
+ }), /*#__PURE__*/_react.default.createElement("div", {
68
+ className: "display-flex flex-1-1 flex-column ".concat(alignRight ? 'align-items-end' : '')
69
+ }, /*#__PURE__*/_react.default.createElement("div", {
70
+ className: titleClassesBase
71
+ }, title)), /*#__PURE__*/_react.default.createElement("span", {
72
+ className: iconClassesCompact
73
+ }));
74
+ }
75
+
76
+ var wrapperClassesFull = (0, _classnames.default)(wrapperClassesBase, 'rounded', 'padding-y-15 padding-x-20', 'width-100pct', className);
77
+ var iconClassesFull = (0, _classnames.default)(iconClassesBase, alignRight ? 'rioglyph-arrow-left margin-right-10' : 'rioglyph-arrow-right margin-left-10', 'text-size-200pct');
78
+ var titleClassesFull = (0, _classnames.default)(titleClassesBase, alignRight && 'text-right', 'text-size-16 text-medium');
79
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, remainingProps, {
80
+ className: wrapperClassesFull,
81
+ onMouseEnter: handleEnter,
82
+ onMouseLeave: handleLeave,
83
+ onClick: onClick
84
+ }), /*#__PURE__*/_react.default.createElement("div", {
85
+ className: "display-flex flex-1-1 flex-column ".concat(alignRight ? 'align-items-end' : '')
86
+ }, /*#__PURE__*/_react.default.createElement("div", {
87
+ className: "text-color-gray line-height-16"
88
+ }, label), /*#__PURE__*/_react.default.createElement("div", {
89
+ className: titleClassesFull
90
+ }, title)), /*#__PURE__*/_react.default.createElement("div", {
91
+ className: "text-size-12"
92
+ }, /*#__PURE__*/_react.default.createElement("span", {
93
+ className: iconClassesFull
94
+ })));
95
+ };
96
+
97
+ Pager.VARIANT_FULL = 'full';
98
+ Pager.VARIANT_COMPACT = 'compact';
99
+ Pager.defaultProps = {
100
+ variant: Pager.VARIANT_FULL,
101
+ alignRight: false,
102
+ disabled: false
103
+ };
104
+ Pager.propTypes = {
105
+ title: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.node]).isRequired,
106
+ label: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.node]),
107
+ alignRight: _propTypes.default.bool,
108
+ variant: _propTypes.default.oneOf([Pager.VARIANT_FULL, Pager.VARIANT_COMPACT, 'full', 'compact']),
109
+ disabled: _propTypes.default.bool,
110
+ onClick: _propTypes.default.func,
111
+ className: _propTypes.default.string
112
+ };
113
+ var _default = Pager;
114
+ exports.default = _default;
@@ -67,7 +67,7 @@ var Select = /*#__PURE__*/function (_Component) {
67
67
  isOpen: false,
68
68
  selectedItem: null,
69
69
  isFilterActive: false,
70
- filterValue: null,
70
+ filterValue: '',
71
71
  filteredOptions: props.options,
72
72
  itemDOMValues: [],
73
73
  focusedItemIndex: DEFAULT_FOCUSED_ITEM_INDEX,
@@ -173,12 +173,12 @@ var Select = /*#__PURE__*/function (_Component) {
173
173
  if (!selectedItem) {
174
174
  // render a placeholder or if there is none render a non-breaking space " "
175
175
  return placeholder ? /*#__PURE__*/_react.default.createElement("span", {
176
- className: 'placeholder'
176
+ className: "placeholder"
177
177
  }, placeholder) : "\xA0";
178
178
  }
179
179
 
180
180
  return /*#__PURE__*/_react.default.createElement("span", null, selectedItem.icon && /*#__PURE__*/_react.default.createElement("span", {
181
- className: 'margin-right-5'
181
+ className: "margin-right-5"
182
182
  }, selectedItem.icon), !this.props.showSelectedItemIcon && selectedItem.label);
183
183
  }
184
184
  }, {
@@ -207,7 +207,7 @@ var Select = /*#__PURE__*/function (_Component) {
207
207
  className: clearButtonClassNames,
208
208
  onClick: clearSelectedItem
209
209
  }, /*#__PURE__*/_react.default.createElement("span", {
210
- className: 'clearButtonIcon rioglyph rioglyph-remove-sign'
210
+ className: "clearButtonIcon rioglyph rioglyph-remove-sign"
211
211
  }));
212
212
  }
213
213
  }, {
@@ -236,26 +236,26 @@ var Select = /*#__PURE__*/function (_Component) {
236
236
  bsSize === 'sm' && 'input-sm', bsSize === 'lg' && 'input-lg', disabled && 'disabled');
237
237
 
238
238
  var selectedOption = /*#__PURE__*/_react.default.createElement("span", {
239
- className: 'width-100pct display-flex'
239
+ className: "width-100pct display-flex"
240
240
  }, label && /*#__PURE__*/_react.default.createElement("span", {
241
- className: 'text-color-dark margin-right-5'
242
- }, label, ':'), this.getSeletedItemLabel(selectedItem, placeholder));
241
+ className: "text-color-dark margin-right-5"
242
+ }, label, ":"), this.getSeletedItemLabel(selectedItem, placeholder));
243
243
 
244
244
  return /*#__PURE__*/_react.default.createElement("button", {
245
- type: 'button',
245
+ type: "button",
246
246
  id: id,
247
247
  name: name,
248
248
  className: classnames,
249
- "data-toggle": 'dropdown',
249
+ "data-toggle": "dropdown",
250
250
  tabIndex: tabIndex,
251
- "aria-haspopup": 'true',
251
+ "aria-haspopup": "true",
252
252
  "aria-expanded": isOpen,
253
253
  onClick: this.onToggle,
254
254
  ref: function ref(node) {
255
255
  return _this4.refToggle = node;
256
256
  }
257
257
  }, useFilter && isOpen && this.renderFilterInput(), selectedOptionText ? selectedOptionText : selectedOption, this.renderClearButton(), /*#__PURE__*/_react.default.createElement("span", {
258
- className: 'caret'
258
+ className: "caret"
259
259
  }));
260
260
  }
261
261
  }, {
@@ -263,7 +263,7 @@ var Select = /*#__PURE__*/function (_Component) {
263
263
  value: function renderDropdownMenu() {
264
264
  var _this5 = this;
265
265
 
266
- //console.log('keyboardUsed=' + this.state.keyboardUsed)
266
+ // console.log('keyboardUsed=' + this.state.keyboardUsed)
267
267
  var _this$props4 = this.props,
268
268
  pullRight = _this$props4.pullRight,
269
269
  autoDropDirection = _this$props4.autoDropDirection,
@@ -279,7 +279,7 @@ var Select = /*#__PURE__*/function (_Component) {
279
279
  });
280
280
  } else if (this.state.keyboardUsed) {
281
281
  focusedItemIndex = 0;
282
- } //console.log('focusedItemIndex=' + focusedItemIndex);
282
+ } // console.log('focusedItemIndex=' + focusedItemIndex);
283
283
 
284
284
 
285
285
  return /*#__PURE__*/_react.default.createElement(_BaseDropdownMenu.BaseDropdownMenu, {
@@ -302,7 +302,7 @@ var Select = /*#__PURE__*/function (_Component) {
302
302
  value: function renderFilterInput() {
303
303
  var inputClasses = (0, _classnames.default)('select-filter-input', (this.state.isFilterActive || this.state.filterValue) && 'select-filter-input-active');
304
304
  return /*#__PURE__*/_react.default.createElement("input", {
305
- type: 'text',
305
+ type: "text",
306
306
  className: inputClasses,
307
307
  autoFocus: true,
308
308
  onChange: this.handleFilterChange,
@@ -400,11 +400,15 @@ var Select = /*#__PURE__*/function (_Component) {
400
400
  }, {
401
401
  key: "closeMenu",
402
402
  value: function closeMenu() {
403
+ var _this7 = this;
404
+
403
405
  if (this.state.isOpen) {
404
406
  this.setState(function () {
405
407
  return {
406
408
  isOpen: false,
407
409
  isFilterActive: false,
410
+ filterValue: '',
411
+ filteredOptions: _this7.props.options,
408
412
  keyboardUsed: false,
409
413
  focusedItemIndex: DEFAULT_FOCUSED_ITEM_INDEX
410
414
  };
@@ -19,7 +19,7 @@ var TableSettingsColumnButtons = function TableSettingsColumnButtons(props) {
19
19
  columnDetails = props.columnDetails,
20
20
  columnOrder = props.columnOrder,
21
21
  openColumnsDetails = props.openColumnsDetails,
22
- columnSearchValue = props.columnSearchValue,
22
+ disabled = props.disabled,
23
23
  onMoveColumn = props.onMoveColumn,
24
24
  onOpenDetails = props.onOpenDetails;
25
25
  var navButtonBase = (0, _classnames.default)('btn btn-muted btn-icon-only btn-sm');
@@ -28,7 +28,7 @@ var TableSettingsColumnButtons = function TableSettingsColumnButtons(props) {
28
28
  var toggleIconClassNames = (0, _classnames.default)('rioglyph', openColumnsDetails[column] ? 'rioglyph-remove' : 'rioglyph-width');
29
29
  return /*#__PURE__*/_react.default.createElement("div", {
30
30
  className: "table-settings-item-item-buttons"
31
- }, !columnSearchValue && /*#__PURE__*/_react.default.createElement("div", {
31
+ }, !disabled && /*#__PURE__*/_react.default.createElement("div", {
32
32
  className: columnUpClasses,
33
33
  onClick: function onClick(event) {
34
34
  event.preventDefault();
@@ -36,8 +36,8 @@ var TableSettingsColumnButtons = function TableSettingsColumnButtons(props) {
36
36
  onMoveColumn(column, index - 1, true);
37
37
  }
38
38
  }, /*#__PURE__*/_react.default.createElement("span", {
39
- className: 'rioglyph rioglyph-arrow-up'
40
- })), !columnSearchValue && /*#__PURE__*/_react.default.createElement("div", {
39
+ className: "rioglyph rioglyph-arrow-up"
40
+ })), !disabled && /*#__PURE__*/_react.default.createElement("div", {
41
41
  className: columnDownClasses,
42
42
  onClick: function onClick(event) {
43
43
  event.preventDefault();
@@ -45,7 +45,7 @@ var TableSettingsColumnButtons = function TableSettingsColumnButtons(props) {
45
45
  onMoveColumn(column, index + 1, true);
46
46
  }
47
47
  }, /*#__PURE__*/_react.default.createElement("span", {
48
- className: 'rioglyph rioglyph-arrow-down'
48
+ className: "rioglyph rioglyph-arrow-down"
49
49
  })), columnDetails && /*#__PURE__*/_react.default.createElement("div", {
50
50
  className: navButtonBase,
51
51
  onClick: function onClick() {
@@ -74,7 +74,8 @@ TableSettingsColumnButtons.propTypes = {
74
74
  index: _propTypes.default.number.isRequired,
75
75
  columnOrder: _propTypes.default.arrayOf(_propTypes.default.string).isRequired,
76
76
  openColumnsDetails: _propTypes.default.object.isRequired,
77
- columnSearchValue: _propTypes.default.string,
77
+ disabled: _propTypes.default.bool,
78
+ columnDetails: _propTypes.default.object,
78
79
  onMoveColumn: _propTypes.default.func,
79
80
  onOpenDetails: _propTypes.default.func
80
81
  };
@@ -2,26 +2,12 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.TableSettingsColumnDetails = void 0;
11
9
 
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
-
18
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
-
20
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
-
22
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
-
24
- var _react = _interopRequireWildcard(require("react"));
10
+ var _react = _interopRequireDefault(require("react"));
25
11
 
26
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
27
13
 
@@ -29,96 +15,66 @@ var _classnames = _interopRequireDefault(require("classnames"));
29
15
 
30
16
  var _Slider = _interopRequireDefault(require("../slider/Slider"));
31
17
 
32
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
-
34
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
-
36
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
37
-
38
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
39
-
40
- var TableSettingsColumnDetails = /*#__PURE__*/function (_Component) {
41
- (0, _inherits2.default)(TableSettingsColumnDetails, _Component);
42
-
43
- var _super = _createSuper(TableSettingsColumnDetails);
44
-
45
- function TableSettingsColumnDetails(props) {
46
- var _this;
47
-
48
- (0, _classCallCheck2.default)(this, TableSettingsColumnDetails);
49
- _this = _super.call(this, props);
50
- _this.handleColumnWidthChange = _this.handleColumnWidthChange.bind((0, _assertThisInitialized2.default)(_this));
51
- _this.handleWidthInputChange = _this.handleWidthInputChange.bind((0, _assertThisInitialized2.default)(_this));
52
- _this.handleResetColumnWidth = _this.handleResetColumnWidth.bind((0, _assertThisInitialized2.default)(_this));
53
- return _this;
54
- }
55
-
56
- (0, _createClass2.default)(TableSettingsColumnDetails, [{
57
- key: "handleWidthInputChange",
58
- value: function handleWidthInputChange(event) {
59
- var parsedValue = event.target.value ? parseInt(event.target.value, 10) : 0;
60
- var max = this.props.maxWidth || this.props.maxColumnWidth;
61
- var value = Math.min(parsedValue, max);
62
- this.props.onColumnWidthChange(this.props.column, value);
63
- }
64
- }, {
65
- key: "handleColumnWidthChange",
66
- value: function handleColumnWidthChange(value) {
67
- this.props.onColumnWidthChange(this.props.column, value);
68
- }
69
- }, {
70
- key: "handleResetColumnWidth",
71
- value: function handleResetColumnWidth() {
72
- this.props.onResetColumnWidth(this.props.column);
73
- }
74
- }, {
75
- key: "render",
76
- value: function render() {
77
- var _this$props = this.props,
78
- _this$props$width = _this$props.width,
79
- width = _this$props$width === void 0 ? 0 : _this$props$width,
80
- _this$props$defaultWi = _this$props.defaultWidth,
81
- defaultWidth = _this$props$defaultWi === void 0 ? 0 : _this$props$defaultWi,
82
- maxWidth = _this$props.maxWidth,
83
- maxColumnWidth = _this$props.maxColumnWidth;
84
- var resetWidthButtonClassNames = (0, _classnames.default)('btn', 'btn-muted', 'btn-icon-only', 'btn-sm', 'margin-left-10', width === defaultWidth && 'disabled');
85
- return /*#__PURE__*/_react.default.createElement("div", {
86
- className: 'table-settings-item-body'
87
- }, /*#__PURE__*/_react.default.createElement(_Slider.default, {
88
- className: "margin-bottom-0",
89
- value: width,
90
- minValue: 0,
91
- maxValue: maxWidth || maxColumnWidth,
92
- step: 1,
93
- onChange: this.handleColumnWidthChange
94
- }), /*#__PURE__*/_react.default.createElement("div", {
95
- className: resetWidthButtonClassNames,
96
- role: "button",
97
- onClick: this.handleResetColumnWidth
98
- }, /*#__PURE__*/_react.default.createElement("span", {
99
- className: 'rioglyph rioglyph-revert'
100
- })), /*#__PURE__*/_react.default.createElement("div", {
101
- className: 'column-width-input'
102
- }, /*#__PURE__*/_react.default.createElement("div", {
103
- className: 'input-group'
104
- }, /*#__PURE__*/_react.default.createElement("input", {
105
- className: 'form-control text-right padding-right-5 no-controls',
106
- type: 'number',
107
- value: width || '',
108
- min: 0,
109
- max: maxWidth || maxColumnWidth,
110
- onChange: this.handleWidthInputChange
111
- }), /*#__PURE__*/_react.default.createElement("div", {
112
- className: 'input-group-addon'
113
- }, 'px'))));
114
- }
115
- }]);
116
- return TableSettingsColumnDetails;
117
- }(_react.Component);
18
+ var TableSettingsColumnDetails = function TableSettingsColumnDetails(props) {
19
+ var _props$width = props.width,
20
+ width = _props$width === void 0 ? 0 : _props$width,
21
+ _props$defaultWidth = props.defaultWidth,
22
+ defaultWidth = _props$defaultWidth === void 0 ? 0 : _props$defaultWidth,
23
+ maxWidth = props.maxWidth,
24
+ maxColumnWidth = props.maxColumnWidth,
25
+ column = props.column,
26
+ onColumnWidthChange = props.onColumnWidthChange,
27
+ onResetColumnWidth = props.onResetColumnWidth;
28
+
29
+ var handleWidthInputChange = function handleWidthInputChange(event) {
30
+ var parsedValue = event.target.value ? parseInt(event.target.value, 10) : 0;
31
+ var max = maxWidth || maxColumnWidth;
32
+ var value = Math.min(parsedValue, max);
33
+ onColumnWidthChange(column, value);
34
+ };
35
+
36
+ var handleColumnWidthChange = function handleColumnWidthChange(value) {
37
+ return onColumnWidthChange(column, value);
38
+ };
39
+
40
+ var handleResetColumnWidth = function handleResetColumnWidth() {
41
+ return onResetColumnWidth(column);
42
+ };
43
+
44
+ var resetWidthButtonClassNames = (0, _classnames.default)('btn', 'btn-muted', 'btn-icon-only', 'btn-sm', 'margin-left-10', width === defaultWidth && 'disabled');
45
+ return /*#__PURE__*/_react.default.createElement("div", {
46
+ className: "table-settings-item-body"
47
+ }, /*#__PURE__*/_react.default.createElement(_Slider.default, {
48
+ className: "margin-bottom-0",
49
+ value: width,
50
+ minValue: 0,
51
+ maxValue: maxWidth || maxColumnWidth,
52
+ step: 1,
53
+ onChange: handleColumnWidthChange
54
+ }), /*#__PURE__*/_react.default.createElement("div", {
55
+ className: resetWidthButtonClassNames,
56
+ role: "button",
57
+ onClick: handleResetColumnWidth
58
+ }, /*#__PURE__*/_react.default.createElement("span", {
59
+ className: "rioglyph rioglyph-revert"
60
+ })), /*#__PURE__*/_react.default.createElement("div", {
61
+ className: "column-width-input"
62
+ }, /*#__PURE__*/_react.default.createElement("div", {
63
+ className: "input-group"
64
+ }, /*#__PURE__*/_react.default.createElement("input", {
65
+ className: "form-control text-right padding-right-5 no-controls",
66
+ type: "number",
67
+ value: width || '',
68
+ min: 0,
69
+ max: maxWidth || maxColumnWidth,
70
+ onChange: handleWidthInputChange
71
+ }), /*#__PURE__*/_react.default.createElement("div", {
72
+ className: "input-group-addon"
73
+ }, "px"))));
74
+ };
118
75
 
119
76
  exports.TableSettingsColumnDetails = TableSettingsColumnDetails;
120
77
  TableSettingsColumnDetails.defaultProps = {
121
- //alias: '',
122
78
  onColumnWidthChange: function onColumnWidthChange() {
123
79
  return undefined;
124
80
  },
@@ -132,7 +88,6 @@ TableSettingsColumnDetails.propTypes = {
132
88
  defaultWidth: _propTypes.default.number,
133
89
  maxWidth: _propTypes.default.number,
134
90
  maxColumnWidth: _propTypes.default.number.isRequired,
135
- //alias: PropTypes.string,
136
91
  onColumnWidthChange: _propTypes.default.func,
137
92
  onResetColumnWidth: _propTypes.default.func
138
93
  };
@@ -9,8 +9,6 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports.default = void 0;
11
11
 
12
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
-
14
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
13
 
16
14
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
@@ -43,7 +41,7 @@ var _mapValues = _interopRequireDefault(require("lodash/fp/mapValues"));
43
41
 
44
42
  var _some = _interopRequireDefault(require("lodash/fp/some"));
45
43
 
46
- var _arrayMove = _interopRequireDefault(require("../../utils/arrayMove"));
44
+ var _sortable = require("@dnd-kit/sortable");
47
45
 
48
46
  var _Dialog = _interopRequireDefault(require("../dialog/Dialog"));
49
47
 
@@ -55,6 +53,8 @@ var _TableSettingsListContainer = require("./TableSettingsListContainer");
55
53
 
56
54
  var _TableSettingsListItem = require("./TableSettingsListItem");
57
55
 
56
+ var _tableSettingsPropTypes = require("./tableSettingsPropTypes");
57
+
58
58
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
59
59
 
60
60
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -87,7 +87,7 @@ var TableSettingsDialog = /*#__PURE__*/function (_PureComponent) {
87
87
  hasChanged: false,
88
88
  movedColumn: false,
89
89
  columnsDetails: props.columnsDetails,
90
- columnLabelStrings: [],
90
+ columnLabelStrings: {},
91
91
  updateColumnLabelStrings: true,
92
92
  openColumnsDetails: {}
93
93
  };
@@ -401,16 +401,23 @@ var TableSettingsDialog = /*#__PURE__*/function (_PureComponent) {
401
401
  }
402
402
  }, {
403
403
  key: "handleSortEnd",
404
- value: function handleSortEnd(_ref) {
405
- var oldIndex = _ref.oldIndex,
406
- newIndex = _ref.newIndex;
404
+ value: function handleSortEnd(event) {
405
+ var active = event.active,
406
+ over = event.over;
407
+
408
+ if (active.id === over.id) {
409
+ return;
410
+ }
411
+
407
412
  var _this$props7 = this.props,
408
413
  immediateChange = _this$props7.immediateChange,
409
414
  onColumnChange = _this$props7.onColumnChange;
410
415
  var _this$state4 = this.state,
411
416
  columnOrder = _this$state4.columnOrder,
412
417
  hiddenColumns = _this$state4.hiddenColumns;
413
- var newColumnOrder = (0, _arrayMove.default)(columnOrder, oldIndex, newIndex);
418
+ var oldIndex = columnOrder.indexOf(active.id);
419
+ var newIndex = columnOrder.indexOf(over.id);
420
+ var newColumnOrder = (0, _sortable.arrayMove)(columnOrder, oldIndex, newIndex);
414
421
  this.setState(function () {
415
422
  return {
416
423
  columnOrder: newColumnOrder,
@@ -427,7 +434,7 @@ var TableSettingsDialog = /*#__PURE__*/function (_PureComponent) {
427
434
  key: "renderNotFoundMessage",
428
435
  value: function renderNotFoundMessage(message) {
429
436
  return /*#__PURE__*/_react.default.createElement("div", {
430
- className: 'text-center text-color-gray'
437
+ className: "text-center text-color-gray"
431
438
  }, message);
432
439
  }
433
440
  }, {
@@ -445,7 +452,6 @@ var TableSettingsDialog = /*#__PURE__*/function (_PureComponent) {
445
452
  columnOrder = _this$state5.columnOrder,
446
453
  _this$state5$hiddenCo = _this$state5.hiddenColumns,
447
454
  hiddenColumns = _this$state5$hiddenCo === void 0 ? [] : _this$state5$hiddenCo,
448
- movedColumn = _this$state5.movedColumn,
449
455
  columnSearchValue = _this$state5.columnSearchValue,
450
456
  columnsDetails = _this$state5.columnsDetails,
451
457
  openColumnsDetails = _this$state5.openColumnsDetails,
@@ -457,13 +463,11 @@ var TableSettingsDialog = /*#__PURE__*/function (_PureComponent) {
457
463
  disabledColumns: disabledColumns,
458
464
  columnOrder: columnOrder,
459
465
  hiddenColumns: hiddenColumns,
460
- movedColumn: movedColumn,
461
466
  columnSearchValue: columnSearchValue,
462
467
  columnsDetails: columnsDetails,
463
468
  columnLabelStrings: columnLabelStrings,
464
469
  openColumnsDetails: openColumnsDetails,
465
470
  updateColumnLabelStrings: updateColumnLabelStrings,
466
- notFoundMessage: notFoundMessage,
467
471
  onMoveColumn: this.moveColumnToIndex,
468
472
  onOpenDetails: this.handleOpenColumnsDetails,
469
473
  onColumnWidthChange: this.handleColumnWidthChange,
@@ -479,27 +483,24 @@ var TableSettingsDialog = /*#__PURE__*/function (_PureComponent) {
479
483
  return _this2.contentRef = node;
480
484
  }
481
485
  }, /*#__PURE__*/_react.default.createElement("div", {
482
- className: 'table-settings-search'
486
+ className: "table-settings-search"
483
487
  }, /*#__PURE__*/_react.default.createElement("div", {
484
- className: 'input-group width-100pct'
488
+ className: "input-group width-100pct"
485
489
  }, /*#__PURE__*/_react.default.createElement("span", {
486
- className: 'input-group-addon'
490
+ className: "input-group-addon"
487
491
  }, /*#__PURE__*/_react.default.createElement("span", {
488
- className: 'rioglyph rioglyph-search'
492
+ className: "rioglyph rioglyph-search"
489
493
  })), /*#__PURE__*/_react.default.createElement(_ClearableInput.default, {
490
494
  value: columnSearchValue,
491
495
  onChange: this.handleSearchChange,
492
496
  placeholder: searchPlaceholder
493
497
  }))), /*#__PURE__*/_react.default.createElement("div", {
494
- className: 'table-settings-body'
495
- }, hasItems ? /*#__PURE__*/_react.default.createElement(_TableSettingsListContainer.TableSettingsListContainerSortable, (0, _extends2.default)({
498
+ className: "table-settings-body"
499
+ }, hasItems ? /*#__PURE__*/_react.default.createElement(_TableSettingsListContainer.TableSettingsListContainer, {
496
500
  items: columnOrder,
497
501
  onSortEnd: this.handleSortEnd,
498
- lockAxis: 'y',
499
- useDragHandle: true,
500
- helperClass: 'table-settings-item shadow-smooth-to-bottom z-index-max',
501
- isSortable: !(0, _isNil.default)(columnSearchValue) && !(0, _isEmpty.default)(columnSearchValue)
502
- }, itemProps)) : this.renderNotFoundMessage(notFoundMessage)));
502
+ itemProps: _objectSpread({}, itemProps)
503
+ }) : this.renderNotFoundMessage(notFoundMessage)));
503
504
  }
504
505
  }, {
505
506
  key: "renderTableSettingsDialogFooter",
@@ -570,13 +571,6 @@ TableSettingsDialog.defaultProps = {
570
571
  notFoundMessage: '',
571
572
  autoLabel: ''
572
573
  };
573
-
574
- var columnsDetailsPropTypes = _propTypes.default.objectOf(_propTypes.default.shape({
575
- width: _propTypes.default.number,
576
- defaultWidth: _propTypes.default.number,
577
- maxWidth: _propTypes.default.number
578
- }));
579
-
580
574
  TableSettingsDialog.propTypes = {
581
575
  show: _propTypes.default.bool.isRequired,
582
576
  title: _propTypes.default.node.isRequired,
@@ -591,8 +585,8 @@ TableSettingsDialog.propTypes = {
591
585
  // hide a sorted column will result in an error, so disable at least one important fallback column
592
586
  // or the sorted column (fallback column recommended)
593
587
  disabledColumns: _propTypes.default.arrayOf(_propTypes.default.string).isRequired,
594
- columnsDetails: columnsDetailsPropTypes,
595
- defaultColumnDetails: columnsDetailsPropTypes,
588
+ columnsDetails: _tableSettingsPropTypes.columnsDetailsPropTypes,
589
+ defaultColumnDetails: _tableSettingsPropTypes.columnsDetailsPropTypes,
596
590
  autoLabel: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.node]),
597
591
  // TODO Document this prop
598
592
  applyButtonText: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.node]),