linear-react-components-ui 0.4.76-beta.12 → 0.4.76-beta.13

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 (101) hide show
  1. package/.husky/pre-commit +2 -2
  2. package/.tool-versions +1 -0
  3. package/.vscode/settings.json +1 -2
  4. package/README.md +33 -0
  5. package/lib/assets/styles/button.scss +17 -10
  6. package/lib/assets/styles/checkbox.scss +92 -70
  7. package/lib/assets/styles/commons.scss +26 -0
  8. package/lib/assets/styles/drawers.scss +22 -6
  9. package/lib/assets/styles/dropdown.scss +28 -2
  10. package/lib/assets/styles/effects.scss +12 -0
  11. package/lib/assets/styles/floatMenu.scss +0 -1
  12. package/lib/assets/styles/gridlayout.scss +2 -1
  13. package/lib/assets/styles/input.scss +21 -0
  14. package/lib/assets/styles/label.scss +9 -1
  15. package/lib/assets/styles/multiSelect.scss +105 -0
  16. package/lib/assets/styles/panel.scss +5 -2
  17. package/lib/assets/styles/periodpicker.scss +65 -0
  18. package/lib/assets/styles/progress.scss +8 -1
  19. package/lib/assets/styles/radio.scss +19 -0
  20. package/lib/assets/styles/select.scss +1 -0
  21. package/lib/assets/styles/skeleton.scss +48 -0
  22. package/lib/assets/styles/table.scss +14 -5
  23. package/lib/assets/styles/tabs.scss +79 -43
  24. package/lib/assets/styles/treeview.scss +32 -0
  25. package/lib/avatar/avatar.spec.js +17 -6
  26. package/lib/avatar/index.js +1 -1
  27. package/lib/buttons/DefaultButton.js +13 -4
  28. package/lib/buttons/split_button/index.js +8 -4
  29. package/lib/checkbox/Label.js +37 -0
  30. package/lib/checkbox/checkbox.spec.js +16 -16
  31. package/lib/checkbox/index.js +33 -12
  32. package/lib/dialog/base/index.js +15 -6
  33. package/lib/dialog/form/index.js +24 -4
  34. package/lib/drawer/Drawer.js +9 -5
  35. package/lib/drawer/Header.js +15 -5
  36. package/lib/drawer/index.js +4 -1
  37. package/lib/form/Field.js +2 -0
  38. package/lib/form/FieldNumber.js +10 -2
  39. package/lib/form/FieldPeriod.js +100 -0
  40. package/lib/form/helpers.js +20 -1
  41. package/lib/form/index.js +207 -224
  42. package/lib/form/withFieldHOC.js +5 -1
  43. package/lib/form/withFormSecurity.js +106 -0
  44. package/lib/icons/helper.js +16 -0
  45. package/lib/inputs/base/InputTextBase.js +10 -5
  46. package/lib/inputs/base/helpers.js +2 -1
  47. package/lib/inputs/date/Dropdown.js +3 -3
  48. package/lib/inputs/date/date.spec.js +46 -36
  49. package/lib/inputs/date/helpers.js +36 -0
  50. package/lib/inputs/date/index.js +12 -10
  51. package/lib/inputs/mask/imaskHOC.js +2 -1
  52. package/lib/inputs/multiSelect/ActionButtons.js +68 -0
  53. package/lib/inputs/multiSelect/Dropdown.js +200 -0
  54. package/lib/inputs/multiSelect/helper.js +18 -0
  55. package/lib/inputs/multiSelect/index.js +343 -0
  56. package/lib/inputs/number/BaseNumber.js +1 -1
  57. package/lib/inputs/number/index.js +7 -5
  58. package/lib/inputs/period/Dialog.js +38 -0
  59. package/lib/inputs/period/Dropdown.js +90 -0
  60. package/lib/inputs/period/PeriodList.js +79 -0
  61. package/lib/inputs/period/helper.js +118 -0
  62. package/lib/inputs/period/index.js +490 -0
  63. package/lib/inputs/select/Dropdown.js +4 -4
  64. package/lib/inputs/select/index.js +26 -3
  65. package/lib/inputs/select/multiple/index.js +9 -7
  66. package/lib/inputs/select/simple/index.js +30 -18
  67. package/lib/internals/withTooltip.js +85 -81
  68. package/lib/labels/DefaultLabel.js +7 -4
  69. package/lib/list/Item.js +3 -3
  70. package/lib/list/index.js +20 -10
  71. package/lib/list/list.spec.js +129 -85
  72. package/lib/menus/float/MenuItem.js +25 -8
  73. package/lib/menus/sidenav/NavMenuItem.js +2 -2
  74. package/lib/menus/sidenav/index.js +7 -3
  75. package/lib/menus/sidenav/popup_menu_search/index.js +1 -1
  76. package/lib/panel/Content.js +11 -4
  77. package/lib/progress/Bar.js +40 -9
  78. package/lib/progress/index.js +12 -4
  79. package/lib/radio/index.js +9 -6
  80. package/lib/skeleton/SkeletonContainer.js +42 -0
  81. package/lib/skeleton/index.js +84 -0
  82. package/lib/spinner/index.js +6 -1
  83. package/lib/split/Split.js +5 -11
  84. package/lib/table/HeaderColumn.js +24 -3
  85. package/lib/table/Row.js +7 -3
  86. package/lib/table/RowColumn.js +22 -3
  87. package/lib/table/index.js +11 -4
  88. package/lib/tabs/DropdownItems.js +84 -0
  89. package/lib/tabs/Menu.js +18 -5
  90. package/lib/tabs/MenuItems.js +15 -9
  91. package/lib/tabs/Panel.js +1 -3
  92. package/lib/tabs/index.js +156 -22
  93. package/lib/tabs/tabs.spec.js +8 -5
  94. package/lib/toolbar/ButtonBar.js +30 -24
  95. package/lib/toolbar/LabelBar.js +22 -27
  96. package/lib/toolbar/helpers.js +12 -0
  97. package/lib/toolbar/index.js +24 -9
  98. package/lib/tooltip/index.js +20 -7
  99. package/lib/treeview/Node.js +348 -49
  100. package/lib/treeview/index.js +457 -36
  101. package/package.json +9 -8
@@ -35,6 +35,8 @@ var _react = _interopRequireWildcard(require("react"));
35
35
 
36
36
  var _propTypes = _interopRequireDefault(require("prop-types"));
37
37
 
38
+ var _uuid = _interopRequireDefault(require("uuid"));
39
+
38
40
  var _NavMenuItem = _interopRequireDefault(require("./NavMenuItem"));
39
41
 
40
42
  var _NavSubMenuItem = _interopRequireDefault(require("./NavSubMenuItem"));
@@ -233,7 +235,9 @@ var SideNav = function SideNav(props) {
233
235
  };
234
236
 
235
237
  var getPopupMenuSearch = function getPopupMenuSearch() {
236
- return /*#__PURE__*/_react["default"].createElement(_NavMenuGroup["default"], null, /*#__PURE__*/_react["default"].createElement(_NavMenuItem["default"], {
238
+ return /*#__PURE__*/_react["default"].createElement(_NavMenuGroup["default"], {
239
+ key: "popup-menusearch-".concat(_uuid["default"].v1())
240
+ }, /*#__PURE__*/_react["default"].createElement(_NavMenuItem["default"], {
237
241
  childrenIsSubMenu: false,
238
242
  customClass: "-customsidenavitem"
239
243
  }, /*#__PURE__*/_react["default"].createElement(_text["default"], _extends({
@@ -252,15 +256,15 @@ var SideNav = function SideNav(props) {
252
256
  },
253
257
  inputRef: searchFieldRef,
254
258
  onChange: function onChange(e) {
259
+ setSearchContent(e.target.value);
255
260
  setOpenSearchMenuPopup(e.target.value !== '');
256
261
  setSideNavDimensions(sideNavRef.current.getBoundingClientRect());
257
- setSearchContent(e.target.value);
258
262
  }
259
263
  }, returnLeftElements())), openSearchMenuPopup && /*#__PURE__*/_react["default"].createElement(_popup_menu_search["default"], _extends({}, props, {
260
264
  style: getPopupMenuSearchStyle(),
261
265
  searchContent: searchContent,
262
266
  handlerClose: closeSearchMenuPopup,
263
- menuItemsContent: returnMenuItems()
267
+ menuItemsContent: menuItemsContent && returnMenuItems()
264
268
  }))));
265
269
  };
266
270
 
@@ -84,7 +84,7 @@ var PopupMenuSearch = function PopupMenuSearch(props) {
84
84
 
85
85
  var search = function search(value) {
86
86
  var filter = value.toLowerCase();
87
- var result = menuItemsContent.filter(function (item) {
87
+ var result = menuItemsContent && menuItemsContent.filter(function (item) {
88
88
  return item.content.toLowerCase().includes(filter);
89
89
  });
90
90
  setSearchFieldContent(value);
@@ -21,12 +21,15 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
21
21
 
22
22
  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; }
23
23
 
24
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
25
+
24
26
  var observer = null;
25
27
 
26
28
  var PanelContent = function PanelContent(props) {
27
29
  var customClass = props.customClass,
28
30
  children = props.children,
29
- style = props.style;
31
+ style = props.style,
32
+ overflow = props.overflow;
30
33
 
31
34
  var _useContext = (0, _react.useContext)(_helpers["default"]),
32
35
  opened = _useContext.opened,
@@ -71,7 +74,9 @@ var PanelContent = function PanelContent(props) {
71
74
  return hideContent ? /*#__PURE__*/_react["default"].createElement(_noPermission["default"], null) : /*#__PURE__*/_react["default"].createElement("div", {
72
75
  ref: rootElementRef,
73
76
  className: "panel-content ".concat(customClass),
74
- style: style
77
+ style: _extends({}, style, {
78
+ overflow: overflow
79
+ })
75
80
  }, opened && children, onEndReached ? /*#__PURE__*/_react["default"].createElement("div", {
76
81
  ref: observedElement
77
82
  }) : /*#__PURE__*/_react["default"].createElement("noscript", null));
@@ -80,12 +85,14 @@ var PanelContent = function PanelContent(props) {
80
85
  PanelContent.propTypes = {
81
86
  children: _propTypes["default"].any,
82
87
  customClass: _propTypes["default"].string,
83
- style: _propTypes["default"].object
88
+ style: _propTypes["default"].object,
89
+ overflow: _propTypes["default"].oneOf(['visible', 'hidden', 'scroll', 'auto'])
84
90
  };
85
91
  PanelContent.defaultProps = {
86
92
  customClass: '',
87
93
  style: {},
88
- children: null
94
+ children: null,
95
+ overflow: 'auto'
89
96
  };
90
97
  var _default = PanelContent;
91
98
  exports["default"] = _default;
@@ -18,6 +18,16 @@ var getPercentage = function getPercentage(props) {
18
18
  return Math.round(percentage * ROUND_PRECISION) / ROUND_PRECISION;
19
19
  };
20
20
 
21
+ var getClass = function getClass(props) {
22
+ var style = 'bar';
23
+ if (props.customClass) style += "".concat(props.customClass);
24
+ if (props.type) style += " -".concat(props.type);
25
+ if (props.effect) style += ' -effect';
26
+ if (props.animated) style += ' -animated';
27
+ if (props.indeterminate) style += ' -indeterminate';
28
+ return style;
29
+ };
30
+
21
31
  var getLabel = function getLabel(progress) {
22
32
  var value = progress.label;
23
33
 
@@ -30,43 +40,64 @@ var getLabel = function getLabel(progress) {
30
40
  }, value);
31
41
  };
32
42
 
43
+ var getStyle = function getStyle(props) {
44
+ if (props.indeterminate) {
45
+ return {
46
+ width: props.progressWidth,
47
+ height: props.height,
48
+ animationDuration: "".concat(props.indeterminateDuration, "s"),
49
+ animationDelay: "".concat(props.indeterminateDelay, "s")
50
+ };
51
+ }
52
+
53
+ return {
54
+ width: "".concat(getPercentage(props), "%"),
55
+ height: props.height
56
+ };
57
+ };
58
+
33
59
  var ProgressBar = function ProgressBar(props) {
34
60
  return /*#__PURE__*/_react["default"].createElement("div", {
35
61
  role: "progressbar",
36
- className: "bar -".concat(props.type, " ").concat(props.customClass, " -").concat(props.effect && '-effect', " -").concat(props.animated && '-animated'),
37
- style: {
38
- width: "".concat(getPercentage(props), "%"),
39
- height: "".concat(props.height)
40
- },
62
+ className: getClass(props),
63
+ style: getStyle(props),
41
64
  "aria-valuenow": props.value,
42
65
  "aria-valuemin": props.min,
43
66
  "aria-valuemax": props.max
44
- }, props.showLabel && getLabel(props));
67
+ }, props.showLabel && !props.indeterminate && getLabel(props));
45
68
  };
46
69
 
47
70
  ProgressBar.defaultProps = {
48
71
  min: 0,
49
72
  max: 100,
50
73
  value: 0,
74
+ progressWidth: '100%',
51
75
  height: '100%',
52
76
  effect: false,
53
77
  customClass: '',
54
78
  type: '',
55
79
  showLabel: true,
56
80
  label: '',
57
- animated: false
81
+ animated: false,
82
+ indeterminate: false,
83
+ indeterminateDuration: 1.5,
84
+ indeterminateDelay: 1
58
85
  };
59
86
  ProgressBar.propTypes = {
60
87
  label: _propTypes["default"].string,
61
88
  min: _propTypes["default"].number,
62
89
  value: _propTypes["default"].number,
63
90
  max: _propTypes["default"].number,
64
- height: _propTypes["default"].string,
91
+ progressWidth: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
92
+ height: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
65
93
  showLabel: _propTypes["default"].bool,
66
94
  effect: _propTypes["default"].bool,
67
95
  type: _propTypes["default"].string,
68
96
  customClass: _propTypes["default"].string,
69
- animated: _propTypes["default"].bool
97
+ animated: _propTypes["default"].bool,
98
+ indeterminate: _propTypes["default"].bool,
99
+ indeterminateDuration: _propTypes["default"].number,
100
+ indeterminateDelay: _propTypes["default"].number
70
101
  };
71
102
  var _default = ProgressBar;
72
103
  exports["default"] = _default;
@@ -21,24 +21,32 @@ require("../assets/styles/progress.scss");
21
21
 
22
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
23
 
24
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
25
+
24
26
  var ProgressBar = function ProgressBar(props) {
25
27
  var style = props.style,
26
28
  children = props.children;
29
+
30
+ var getStyle = _extends({}, style, {
31
+ width: props.width,
32
+ height: props.height
33
+ });
34
+
27
35
  return /*#__PURE__*/_react["default"].createElement("div", {
28
36
  className: "container-progress",
29
- style: style
37
+ style: getStyle
30
38
  }, children || /*#__PURE__*/_react["default"].createElement(_Bar["default"], props));
31
39
  };
32
40
 
33
41
  ProgressBar.propTypes = {
34
- width: _propTypes["default"].string,
35
- height: _propTypes["default"].string,
42
+ width: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
43
+ height: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
36
44
  style: _propTypes["default"].object,
37
45
  children: _propTypes["default"].any
38
46
  };
39
47
  ProgressBar.defaultProps = {
40
48
  width: '100%',
41
- height: '100%',
49
+ height: '24px',
42
50
  children: null,
43
51
  style: {}
44
52
  };
@@ -50,7 +50,8 @@ var Radio = function Radio(props) {
50
50
  _onChange = props.onChange,
51
51
  id = props.id,
52
52
  checked = props.checked,
53
- permissionAttr = props.permissionAttr;
53
+ permissionAttr = props.permissionAttr,
54
+ skeletonize = props.skeletonize;
54
55
 
55
56
  var _useState = (0, _react.useState)(checked),
56
57
  _useState2 = _slicedToArray(_useState, 2),
@@ -68,7 +69,7 @@ var Radio = function Radio(props) {
68
69
  }, [checked]);
69
70
 
70
71
  var shouldDisable = function shouldDisable() {
71
- return disabled || onDenied.disabled;
72
+ return disabled || onDenied.disabled || skeletonize;
72
73
  };
73
74
 
74
75
  var getCustomProps = function getCustomProps() {
@@ -96,7 +97,7 @@ var Radio = function Radio(props) {
96
97
 
97
98
  if (onDenied.unvisible) return null;
98
99
  return /*#__PURE__*/_react["default"].createElement("div", {
99
- className: "radio-button ".concat(disabled)
100
+ className: "radio-button ".concat(disabled ? 'disabled' : '', " ").concat(skeletonize ? '-skeletonized' : '')
100
101
  }, /*#__PURE__*/_react["default"].createElement("input", _extends({}, getCustomProps(), {
101
102
  className: "radio-component",
102
103
  type: "radio",
@@ -108,7 +109,7 @@ var Radio = function Radio(props) {
108
109
  })), /*#__PURE__*/_react["default"].createElement("label", {
109
110
  className: "description",
110
111
  htmlFor: id
111
- }, label));
112
+ }, /*#__PURE__*/_react["default"].createElement("span", null, label)));
112
113
  };
113
114
 
114
115
  Radio.propTypes = {
@@ -121,7 +122,8 @@ Radio.propTypes = {
121
122
  required: _propTypes["default"].bool,
122
123
  onChange: _propTypes["default"].func,
123
124
  checked: _propTypes["default"].bool,
124
- permissionAttr: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].arrayOf(_propTypes["default"].object)])
125
+ permissionAttr: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].arrayOf(_propTypes["default"].object)]),
126
+ skeletonize: _propTypes["default"].bool
125
127
  };
126
128
  Radio.defaultProps = {
127
129
  label: null,
@@ -132,7 +134,8 @@ Radio.defaultProps = {
132
134
  value: undefined,
133
135
  checked: undefined,
134
136
  id: undefined,
135
- permissionAttr: undefined
137
+ permissionAttr: undefined,
138
+ skeletonize: false
136
139
  };
137
140
  var _default = Radio;
138
141
  exports["default"] = _default;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
+
14
+ var SkeletonContainer = function SkeletonContainer(_ref) {
15
+ var children = _ref.children,
16
+ row = _ref.row,
17
+ customClass = _ref.customClass,
18
+ style = _ref.style;
19
+
20
+ var getClass = function getClass() {
21
+ return "skeletoncontainer-component ".concat(customClass, "\n ").concat(row && '-row');
22
+ };
23
+
24
+ return /*#__PURE__*/_react["default"].createElement("div", {
25
+ className: getClass(),
26
+ style: style
27
+ }, children);
28
+ };
29
+
30
+ SkeletonContainer.propTypes = {
31
+ children: _propTypes["default"].element.isRequired,
32
+ row: _propTypes["default"].bool,
33
+ customClass: _propTypes["default"].string,
34
+ style: _propTypes["default"].object
35
+ };
36
+ SkeletonContainer.defaultProps = {
37
+ row: false,
38
+ customClass: undefined,
39
+ style: null
40
+ };
41
+ var _default = SkeletonContainer;
42
+ exports["default"] = _default;
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "SkeletonContainer", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _SkeletonContainer["default"];
10
+ }
11
+ });
12
+ exports["default"] = void 0;
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _propTypes = _interopRequireDefault(require("prop-types"));
17
+
18
+ var _gridlayout = _interopRequireDefault(require("../gridlayout"));
19
+
20
+ var _SkeletonContainer = _interopRequireDefault(require("./SkeletonContainer"));
21
+
22
+ require("../assets/styles/skeleton.scss");
23
+
24
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
+
26
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
27
+
28
+ var Skeleton = function Skeleton(props) {
29
+ var customClass = props.customClass,
30
+ style = props.style,
31
+ width = props.width,
32
+ height = props.height,
33
+ round = props.round,
34
+ color = props.color,
35
+ size = props.size,
36
+ gridLayout = props.gridLayout;
37
+ var customStyles = {
38
+ width: width,
39
+ height: height
40
+ };
41
+
42
+ var getClass = function getClass() {
43
+ return "skeleton-component ".concat(customClass, "\n ").concat(color && "-".concat(color), "\n ").concat(round && '-round', "\n ").concat(round && size && "-".concat(size));
44
+ };
45
+
46
+ var renderContent = function renderContent() {
47
+ return /*#__PURE__*/_react["default"].createElement("div", {
48
+ className: getClass(),
49
+ style: _extends({}, customStyles, style)
50
+ });
51
+ };
52
+
53
+ if (gridLayout !== undefined) {
54
+ return /*#__PURE__*/_react["default"].createElement(_gridlayout["default"], {
55
+ customClass: "-withskeleton",
56
+ cols: gridLayout
57
+ }, renderContent());
58
+ }
59
+
60
+ return renderContent();
61
+ };
62
+
63
+ Skeleton.propTypes = {
64
+ width: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
65
+ height: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
66
+ round: _propTypes["default"].bool,
67
+ size: _propTypes["default"].oneOf(['mini', 'small', 'medium', 'large']),
68
+ color: _propTypes["default"].oneOf(['default', 'white']),
69
+ gridLayout: _propTypes["default"].string,
70
+ customClass: _propTypes["default"].string,
71
+ style: _propTypes["default"].object
72
+ };
73
+ Skeleton.defaultProps = {
74
+ width: undefined,
75
+ height: undefined,
76
+ round: false,
77
+ size: 'medium',
78
+ color: 'default',
79
+ gridLayout: undefined,
80
+ customClass: '',
81
+ style: null
82
+ };
83
+ var _default = Skeleton;
84
+ exports["default"] = _default;
@@ -47,12 +47,17 @@ var Spinner = function Spinner(props) {
47
47
  delay = _useState2[0],
48
48
  setDelay = _useState2[1];
49
49
 
50
+ var delayTimeout = (0, _react.useRef)(null);
50
51
  (0, _react.useEffect)(function () {
51
52
  if (delayTime) {
52
- setTimeout(function () {
53
+ delayTimeout.current = setTimeout(function () {
53
54
  setDelay(false);
54
55
  }, delayTime);
55
56
  }
57
+
58
+ return function () {
59
+ clearTimeout(delayTimeout.current);
60
+ };
56
61
  }, []);
57
62
 
58
63
  var getCssClass = function getCssClass() {
@@ -49,8 +49,6 @@ var Split = function Split(props) {
49
49
  var hotKey = props.hotKey,
50
50
  secondaryInitialSize = props.secondaryInitialSize,
51
51
  onSecondaryPaneSizeChange = props.onSecondaryPaneSizeChange,
52
- onDragStart = props.onDragStart,
53
- onDragEnd = props.onDragEnd,
54
52
  vertical = props.vertical,
55
53
  primaryIndex = props.primaryIndex,
56
54
  percentage = props.percentage,
@@ -271,9 +269,6 @@ var Split = function Split(props) {
271
269
  (0, _react.useEffect)(function () {
272
270
  if (state.resizing) {
273
271
  document.addEventListener('mousemove', handleMouseMove);
274
- if (onDragStart) onDragStart();
275
- } else if (onDragEnd) {
276
- onDragEnd();
277
272
  }
278
273
 
279
274
  return function () {
@@ -334,8 +329,11 @@ var Split = function Split(props) {
334
329
  role: "button",
335
330
  tabIndex: "-1",
336
331
  onDoubleClick: function onDoubleClick() {
337
- return setState(_extends({}, state, {
338
- visibleSplitSide: !visibleSplitSide,
332
+ return state.secondaryPaneSize === 100 ? setState(_extends({}, state, {
333
+ secondaryPaneSize: 50,
334
+ resizing: false
335
+ })) : setState(_extends({}, state, {
336
+ secondaryPaneSize: 100,
339
337
  resizing: false
340
338
  }));
341
339
  },
@@ -354,8 +352,6 @@ Split.propTypes = {
354
352
  secondaryInitialSize: _propTypes["default"].number,
355
353
  secondaryMinSize: _propTypes["default"].number,
356
354
  hideSplitSideOnToggleClick: _propTypes["default"].string,
357
- onDragStart: _propTypes["default"].func,
358
- onDragEnd: _propTypes["default"].func,
359
355
  onSecondaryPaneSizeChange: _propTypes["default"].func,
360
356
  children: _propTypes["default"].arrayOf(_propTypes["default"].node)
361
357
  };
@@ -369,8 +365,6 @@ Split.defaultProps = {
369
365
  secondaryInitialSize: undefined,
370
366
  secondaryMinSize: 0,
371
367
  hideSplitSideOnToggleClick: 'primary',
372
- onDragStart: null,
373
- onDragEnd: null,
374
368
  onSecondaryPaneSizeChange: null,
375
369
  children: [],
376
370
  hotKey: false
@@ -1,26 +1,47 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports["default"] = void 0;
7
9
 
8
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
9
11
 
10
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
13
 
14
+ var _skeleton = _interopRequireDefault(require("../skeleton"));
15
+
16
+ var _helpers = _interopRequireDefault(require("./helpers"));
17
+
12
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
19
 
20
+ 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); }
21
+
22
+ 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; }
23
+
14
24
  var HeaderColumn = function HeaderColumn(_ref) {
15
25
  var customClass = _ref.customClass,
16
26
  style = _ref.style,
17
27
  children = _ref.children,
18
28
  textAlign = _ref.textAlign,
19
29
  visible = _ref.visible;
20
- return visible ? /*#__PURE__*/_react["default"].createElement("th", {
30
+
31
+ var _useContext = (0, _react.useContext)(_helpers["default"]),
32
+ skeletonize = _useContext.skeletonize,
33
+ vertical = _useContext.vertical;
34
+
35
+ if (!visible) return null;
36
+ return /*#__PURE__*/_react["default"].createElement("th", {
21
37
  className: "headercolumn ".concat(customClass, " text-align-").concat(textAlign),
22
38
  style: style
23
- }, children) : null;
39
+ }, skeletonize && !vertical ? /*#__PURE__*/_react["default"].createElement(_skeleton["default"], {
40
+ height: style.height ? null : 16,
41
+ style: {
42
+ marginBottom: 0
43
+ }
44
+ }) : children);
24
45
  };
25
46
 
26
47
  HeaderColumn.propTypes = {
package/lib/table/Row.js CHANGED
@@ -32,12 +32,16 @@ var Row = function Row(props) {
32
32
  selectedRowId = _useContext.selectedRowId,
33
33
  handleSelectRow = _useContext.handleSelectRow,
34
34
  handleTableRowClick = _useContext.handleTableRowClick,
35
- handleTableColClick = _useContext.handleTableColClick;
35
+ handleTableColClick = _useContext.handleTableColClick,
36
+ vertical = _useContext.vertical,
37
+ skeletonize = _useContext.skeletonize;
36
38
 
37
39
  var contextValues = {
38
40
  dataId: dataId,
39
41
  rowBorder: rowBorder,
40
- handleTableColClick: handleTableColClick
42
+ handleTableColClick: handleTableColClick,
43
+ vertical: vertical,
44
+ skeletonize: skeletonize
41
45
  };
42
46
  return /*#__PURE__*/_react["default"].createElement(_helpers.RowContext.Provider, {
43
47
  value: contextValues
@@ -59,7 +63,7 @@ Row.propTypes = {
59
63
  children: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].arrayOf(_propTypes["default"].object)]).isRequired,
60
64
  customClass: _propTypes["default"].string,
61
65
  rowId: _propTypes["default"].string,
62
- dataId: _propTypes["default"].number,
66
+ dataId: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
63
67
  onClick: _propTypes["default"].func,
64
68
  rowBorder: _propTypes["default"].bool,
65
69
  height: _propTypes["default"].string
@@ -13,6 +13,8 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
13
13
 
14
14
  var _helpers = require("./helpers");
15
15
 
16
+ var _skeleton = _interopRequireDefault(require("../skeleton"));
17
+
16
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
17
19
 
18
20
  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); }
@@ -49,8 +51,27 @@ var RowColumn = function RowColumn(props) {
49
51
  textAlign = props.textAlign,
50
52
  visible = props.visible;
51
53
  var context = (0, _react.useContext)(_helpers.RowContext);
54
+ var skeletonize = context.skeletonize,
55
+ vertical = context.vertical;
52
56
  var hiddenContent = displayContent !== 'always';
57
+
58
+ var renderContent = function renderContent() {
59
+ if (skeletonize) {
60
+ return /*#__PURE__*/_react["default"].createElement(_skeleton["default"], {
61
+ height: 16,
62
+ style: {
63
+ marginBottom: 0
64
+ }
65
+ });
66
+ }
67
+
68
+ return hiddenContent ? /*#__PURE__*/_react["default"].createElement("span", {
69
+ className: displayClass[displayContent]
70
+ }, props.children) : props.children;
71
+ };
72
+
53
73
  if (!visible) return null;
74
+ if (skeletonize && !vertical) return null;
54
75
  return /*#__PURE__*/_react["default"].createElement("td", {
55
76
  className: "rowcolumn ".concat(customClass, " text-align-").concat(textAlign, " ").concat(!context.rowBorder && ' -noborder'),
56
77
  style: style,
@@ -59,9 +80,7 @@ var RowColumn = function RowColumn(props) {
59
80
  },
60
81
  role: "presentation",
61
82
  tabIndex: "-1"
62
- }, hiddenContent ? /*#__PURE__*/_react["default"].createElement("span", {
63
- className: displayClass[displayContent]
64
- }, props.children) : props.children);
83
+ }, renderContent());
65
84
  };
66
85
 
67
86
  RowColumn.propTypes = {
@@ -81,18 +81,21 @@ var getClass = function getClass(_ref) {
81
81
  striped = _ref.striped,
82
82
  bordered = _ref.bordered,
83
83
  hovered = _ref.hovered,
84
+ skeletonize = _ref.skeletonize,
84
85
  headerColored = _ref.headerColored,
85
86
  condensed = _ref.condensed,
86
87
  vertical = _ref.vertical,
87
88
  bodyScrollable = _ref.bodyScrollable;
88
- return "table-component ".concat(customClass, " ").concat(striped && '-striped', " \n ").concat(bordered && '-bordered', " ").concat(hovered && '-hovered', " ").concat(headerColored && '-headercolor', "\n ").concat(condensed && '-condensed', "\n ").concat(vertical && '-vertical', "\n ").concat(bodyScrollable && '-scrollable');
89
+ return "table-component ".concat(customClass, " ").concat(striped && '-striped', " \n ").concat(bordered && '-bordered', " ").concat(hovered && '-hovered', " ").concat(headerColored && '-headercolor', "\n ").concat(condensed && '-condensed', "\n ").concat(vertical && '-vertical', "\n ").concat(skeletonize ? '-skeletonized' : '', "\n ").concat(bodyScrollable ? '-scrollable' : '');
89
90
  };
90
91
 
91
92
  var Table = function Table(props) {
92
93
  var onColClick = props.onColClick,
93
94
  onRowClick = props.onRowClick,
94
95
  bodyScrollable = props.bodyScrollable,
95
- children = props.children;
96
+ children = props.children,
97
+ vertical = props.vertical,
98
+ skeletonize = props.skeletonize;
96
99
 
97
100
  var _useState = (0, _react.useState)(props.selectedRowId),
98
101
  _useState2 = _slicedToArray(_useState, 2),
@@ -127,6 +130,8 @@ var Table = function Table(props) {
127
130
  bodyScrollable: bodyScrollable,
128
131
  bodyScrollWidth: bodyScrollWidth,
129
132
  selectedRowId: selectedRowId,
133
+ vertical: vertical,
134
+ skeletonize: skeletonize,
130
135
  handleSelectRow: function handleSelectRow(selectedId) {
131
136
  setSelectedRowId(selectedId);
132
137
  },
@@ -157,7 +162,8 @@ Table.propTypes = {
157
162
  onColClick: _propTypes["default"].func,
158
163
  vertical: _propTypes["default"].bool,
159
164
  selectedRowId: _propTypes["default"].string,
160
- bodyScrollable: _propTypes["default"].bool
165
+ bodyScrollable: _propTypes["default"].bool,
166
+ skeletonize: _propTypes["default"].bool
161
167
  };
162
168
  Table.defaultProps = {
163
169
  striped: false,
@@ -170,7 +176,8 @@ Table.defaultProps = {
170
176
  onColClick: undefined,
171
177
  vertical: false,
172
178
  selectedRowId: null,
173
- bodyScrollable: false
179
+ bodyScrollable: false,
180
+ skeletonize: false
174
181
  };
175
182
  var _default = Table;
176
183
  exports["default"] = _default;