linear-react-components-ui 0.4.76-beta.1 → 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 (58) hide show
  1. package/.husky/pre-commit +2 -2
  2. package/README.md +12 -2
  3. package/lib/assets/styles/button.scss +17 -10
  4. package/lib/assets/styles/checkbox.scss +92 -70
  5. package/lib/assets/styles/commons.scss +26 -0
  6. package/lib/assets/styles/drawers.scss +22 -6
  7. package/lib/assets/styles/dropdown.scss +3 -0
  8. package/lib/assets/styles/gridlayout.scss +2 -1
  9. package/lib/assets/styles/input.scss +21 -0
  10. package/lib/assets/styles/label.scss +9 -1
  11. package/lib/assets/styles/panel.scss +5 -1
  12. package/lib/assets/styles/radio.scss +19 -0
  13. package/lib/assets/styles/skeleton.scss +48 -0
  14. package/lib/assets/styles/table.scss +6 -5
  15. package/lib/assets/styles/tabs.scss +2 -0
  16. package/lib/buttons/DefaultButton.js +7 -4
  17. package/lib/buttons/split_button/index.js +8 -4
  18. package/lib/checkbox/Label.js +1 -1
  19. package/lib/checkbox/checkbox.spec.js +16 -16
  20. package/lib/checkbox/index.js +16 -9
  21. package/lib/dialog/base/index.js +1 -1
  22. package/lib/dialog/form/index.js +10 -3
  23. package/lib/drawer/Drawer.js +9 -5
  24. package/lib/drawer/Header.js +15 -5
  25. package/lib/form/helpers.js +12 -1
  26. package/lib/form/index.js +195 -278
  27. package/lib/form/withFieldHOC.js +3 -1
  28. package/lib/form/withFormSecurity.js +8 -8
  29. package/lib/inputs/base/InputTextBase.js +20 -6
  30. package/lib/inputs/base/helpers.js +15 -3
  31. package/lib/inputs/date/Dropdown.js +3 -3
  32. package/lib/inputs/date/date.spec.js +46 -36
  33. package/lib/inputs/date/helpers.js +36 -0
  34. package/lib/inputs/date/index.js +12 -10
  35. package/lib/inputs/mask/imaskHOC.js +2 -1
  36. package/lib/internals/withTooltip.js +13 -10
  37. package/lib/labels/DefaultLabel.js +7 -4
  38. package/lib/menus/sidenav/NavMenuItem.js +2 -2
  39. package/lib/panel/Content.js +11 -4
  40. package/lib/radio/index.js +9 -6
  41. package/lib/skeleton/SkeletonContainer.js +42 -0
  42. package/lib/skeleton/index.js +84 -0
  43. package/lib/table/HeaderColumn.js +24 -3
  44. package/lib/table/Row.js +6 -2
  45. package/lib/table/RowColumn.js +22 -3
  46. package/lib/table/index.js +11 -4
  47. package/lib/tabs/MenuItems.js +9 -3
  48. package/lib/tabs/index.js +78 -53
  49. package/lib/tabs/tabs.spec.js +8 -5
  50. package/lib/toolbar/ButtonBar.js +30 -24
  51. package/lib/toolbar/LabelBar.js +22 -27
  52. package/lib/toolbar/helpers.js +12 -0
  53. package/lib/toolbar/index.js +23 -12
  54. package/lib/tooltip/index.js +8 -7
  55. package/lib/treeview/Node.js +231 -202
  56. package/lib/treeview/index.js +31 -13
  57. package/package.json +1 -1
  58. package/.DS_Store +0 -0
@@ -7,9 +7,10 @@ exports.getRightElements = exports.getErrorMessages = exports.getInputWrapperCla
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
+ var _lodash = _interopRequireDefault(require("lodash"));
11
+
10
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
13
 
12
- // import Popover from '../../popover';
13
14
  var getInputClass = function getInputClass(_ref) {
14
15
  var textAlign = _ref.textAlign,
15
16
  readOnly = _ref.readOnly;
@@ -38,9 +39,20 @@ var getErrorMessages = function getErrorMessages(messages) {
38
39
 
39
40
  exports.getErrorMessages = getErrorMessages;
40
41
 
41
- var getRightElements = function getRightElements(rightElements, errorMessages) {
42
- if (errorMessages.length === 0) return rightElements;
42
+ var getRightElements = function getRightElements(rightElements, errorMessages, skeletonize) {
43
43
  var elements = rightElements || [];
44
+ if (skeletonize) return null;
45
+
46
+ if (!_lodash["default"].isArray(elements)) {
47
+ elements = [elements];
48
+ }
49
+
50
+ elements = elements.map(function (element, index) {
51
+ return element && /*#__PURE__*/_react["default"].cloneElement(element, {
52
+ key: "rightelement-".concat(index + 1)
53
+ });
54
+ });
55
+ if (errorMessages.length === 0) return elements;
44
56
  return /*#__PURE__*/_react["default"].createElement("div", {
45
57
  className: "sidebuttons"
46
58
  }, elements);
@@ -13,7 +13,7 @@ var _reactDom = _interopRequireDefault(require("react-dom"));
13
13
 
14
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
15
15
 
16
- var _helper = _interopRequireDefault(require("./helper"));
16
+ var _helpers = require("./helpers");
17
17
 
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
19
19
 
@@ -52,7 +52,7 @@ var Dropdown = /*#__PURE__*/function (_Component) {
52
52
  _this = _super.call(this, props);
53
53
  _this.el = document.createElement('div');
54
54
  _this.el.className = 'datepicker-component';
55
- _this.el.style = (0, _helper["default"])(props);
55
+ _this.el.style = (0, _helpers.getCalendarDropdownStyle)(props);
56
56
  return _this;
57
57
  }
58
58
 
@@ -65,7 +65,7 @@ var Dropdown = /*#__PURE__*/function (_Component) {
65
65
  }, {
66
66
  key: "componentDidUpdate",
67
67
  value: function componentDidUpdate() {
68
- this.el.style = (0, _helper["default"])(this.props);
68
+ this.el.style = (0, _helpers.getCalendarDropdownStyle)(this.props);
69
69
  }
70
70
  }, {
71
71
  key: "componentWillUnmount",
@@ -71,13 +71,23 @@ describe('DatePicker', function () {
71
71
  var calendarButton = container.querySelector('.calendar-button');
72
72
  expect(calendarButton).not.toBeTruthy();
73
73
  });
74
+ it('show calendar when click', function () {
75
+ var _render6 = (0, _react2.render)(datePicker()),
76
+ container = _render6.container;
77
+
78
+ var calendarButton = container.querySelector('.calendar-button');
79
+
80
+ _react2.fireEvent.click(calendarButton);
81
+
82
+ expect(document.querySelector('.datepicker-component')).toBeInTheDocument();
83
+ });
74
84
  });
75
85
  describe('prop shouldCloseOnSelect', function () {
76
86
  it('when false should not close Calendar after date beeing chosed', function () {
77
- var _render6 = (0, _react2.render)(datePicker({
87
+ var _render7 = (0, _react2.render)(datePicker({
78
88
  shouldCloseOnSelect: false
79
89
  })),
80
- container = _render6.container;
90
+ container = _render7.container;
81
91
 
82
92
  var inputContent = container.querySelector('.textinput');
83
93
  var calendarComponent = document.querySelector('.calendar-component');
@@ -93,10 +103,10 @@ describe('DatePicker', function () {
93
103
  expect(calendarComponent).toBeInTheDocument();
94
104
  });
95
105
  it('when true should close Calendar after date beeing chosed', function () {
96
- var _render7 = (0, _react2.render)(datePicker({
106
+ var _render8 = (0, _react2.render)(datePicker({
97
107
  shouldCloseOnSelect: true
98
108
  })),
99
- container = _render7.container;
109
+ container = _render8.container;
100
110
 
101
111
  var inputContent = container.querySelector('.textinput');
102
112
  var calendarComponent = document.querySelector('.calendar-component');
@@ -114,10 +124,10 @@ describe('DatePicker', function () {
114
124
  });
115
125
  describe('prop openOnFocus', function () {
116
126
  it('when false should not open Calendar when input receive focus', function () {
117
- var _render8 = (0, _react2.render)(datePicker({
127
+ var _render9 = (0, _react2.render)(datePicker({
118
128
  openOnFocus: false
119
129
  })),
120
- container = _render8.container;
130
+ container = _render9.container;
121
131
 
122
132
  var inputContent = container.querySelector('.textinput');
123
133
 
@@ -127,10 +137,10 @@ describe('DatePicker', function () {
127
137
  expect(calendarComponent).not.toBeInTheDocument();
128
138
  });
129
139
  it('when true should open Calendar when input receive focus', function () {
130
- var _render9 = (0, _react2.render)(datePicker({
140
+ var _render10 = (0, _react2.render)(datePicker({
131
141
  openOnFocus: true
132
142
  })),
133
- container = _render9.container;
143
+ container = _render10.container;
134
144
 
135
145
  var inputContent = container.querySelector('.textinput');
136
146
 
@@ -142,10 +152,10 @@ describe('DatePicker', function () {
142
152
  });
143
153
  describe('prop showCalendarInDialog', function () {
144
154
  it('when true should render Calendar within Dialog', function () {
145
- var _render10 = (0, _react2.render)(datePicker({
155
+ var _render11 = (0, _react2.render)(datePicker({
146
156
  showCalendarInDialog: true
147
157
  })),
148
- container = _render10.container;
158
+ container = _render11.container;
149
159
 
150
160
  var inputContent = container.querySelector('.textinput');
151
161
 
@@ -155,10 +165,10 @@ describe('DatePicker', function () {
155
165
  expect(calendarComponent).toBeTruthy();
156
166
  });
157
167
  it('when false should render Calendar within Dropdown', function () {
158
- var _render11 = (0, _react2.render)(datePicker({
168
+ var _render12 = (0, _react2.render)(datePicker({
159
169
  showCalendarInDialog: false
160
170
  })),
161
- container = _render11.container;
171
+ container = _render12.container;
162
172
 
163
173
  var inputContent = container.querySelector('.textinput');
164
174
 
@@ -174,11 +184,11 @@ describe('DatePicker', function () {
174
184
  height: '600px'
175
185
  };
176
186
 
177
- var _render12 = (0, _react2.render)(datePicker({
187
+ var _render13 = (0, _react2.render)(datePicker({
178
188
  showCalendarInDialog: true,
179
189
  dialogSize: dialogSize
180
190
  })),
181
- container = _render12.container;
191
+ container = _render13.container;
182
192
 
183
193
  var inputContent = container.querySelector('.textinput');
184
194
 
@@ -190,10 +200,10 @@ describe('DatePicker', function () {
190
200
  });
191
201
  describe('prop calendarColorStyle', function () {
192
202
  it('when receive "primary" add -primary css class to Calendar', function () {
193
- var _render13 = (0, _react2.render)(datePicker({
203
+ var _render14 = (0, _react2.render)(datePicker({
194
204
  calendarColorStyle: 'primary'
195
205
  })),
196
- container = _render13.container;
206
+ container = _render14.container;
197
207
 
198
208
  var inputContent = container.querySelector('.textinput');
199
209
 
@@ -203,10 +213,10 @@ describe('DatePicker', function () {
203
213
  expect(calendarComponent).toHaveClass('-primary');
204
214
  });
205
215
  it('when receive "success" add -success css class to Calendar', function () {
206
- var _render14 = (0, _react2.render)(datePicker({
216
+ var _render15 = (0, _react2.render)(datePicker({
207
217
  calendarColorStyle: 'success'
208
218
  })),
209
- container = _render14.container;
219
+ container = _render15.container;
210
220
 
211
221
  var inputContent = container.querySelector('.textinput');
212
222
 
@@ -216,10 +226,10 @@ describe('DatePicker', function () {
216
226
  expect(calendarComponent).toHaveClass('-success');
217
227
  });
218
228
  it('when receive "danger" add -danger css class to Calendar', function () {
219
- var _render15 = (0, _react2.render)(datePicker({
229
+ var _render16 = (0, _react2.render)(datePicker({
220
230
  calendarColorStyle: 'danger'
221
231
  })),
222
- container = _render15.container;
232
+ container = _render16.container;
223
233
 
224
234
  var inputContent = container.querySelector('.textinput');
225
235
 
@@ -229,10 +239,10 @@ describe('DatePicker', function () {
229
239
  expect(calendarComponent).toHaveClass('-danger');
230
240
  });
231
241
  it('when receive "info" add -info css class to Calendar', function () {
232
- var _render16 = (0, _react2.render)(datePicker({
242
+ var _render17 = (0, _react2.render)(datePicker({
233
243
  calendarColorStyle: 'info'
234
244
  })),
235
- container = _render16.container;
245
+ container = _render17.container;
236
246
 
237
247
  var inputContent = container.querySelector('.textinput');
238
248
 
@@ -242,10 +252,10 @@ describe('DatePicker', function () {
242
252
  expect(calendarComponent).toHaveClass('-info');
243
253
  });
244
254
  it('when receive "warning" add -warning css class to Calendar', function () {
245
- var _render17 = (0, _react2.render)(datePicker({
255
+ var _render18 = (0, _react2.render)(datePicker({
246
256
  calendarColorStyle: 'warning'
247
257
  })),
248
- container = _render17.container;
258
+ container = _render18.container;
249
259
 
250
260
  var inputContent = container.querySelector('.textinput');
251
261
 
@@ -256,11 +266,11 @@ describe('DatePicker', function () {
256
266
  });
257
267
  });
258
268
  it('prop required should render span for required field', function () {
259
- var _render18 = (0, _react2.render)(datePicker({
269
+ var _render19 = (0, _react2.render)(datePicker({
260
270
  label: 'teste',
261
271
  required: true
262
272
  })),
263
- container = _render18.container;
273
+ container = _render19.container;
264
274
 
265
275
  var requiredLabel = container.querySelector('.input-base-component > .labelcontainer > .label > .-requiredlabel');
266
276
  expect(requiredLabel).toBeTruthy();
@@ -269,10 +279,10 @@ describe('DatePicker', function () {
269
279
  it('should apply onComplete', function () {
270
280
  var onComplete = jest.fn();
271
281
 
272
- var _render19 = (0, _react2.render)(datePicker({
282
+ var _render20 = (0, _react2.render)(datePicker({
273
283
  onComplete: onComplete
274
284
  })),
275
- container = _render19.container;
285
+ container = _render20.container;
276
286
 
277
287
  var inputContent = container.querySelector('.textinput');
278
288
 
@@ -287,10 +297,10 @@ describe('DatePicker', function () {
287
297
  it('should apply onBlur', function () {
288
298
  var onBlur = jest.fn();
289
299
 
290
- var _render20 = (0, _react2.render)(datePicker({
300
+ var _render21 = (0, _react2.render)(datePicker({
291
301
  onBlur: onBlur
292
302
  })),
293
- container = _render20.container;
303
+ container = _render21.container;
294
304
 
295
305
  var inputContent = container.querySelector('.textinput');
296
306
 
@@ -301,10 +311,10 @@ describe('DatePicker', function () {
301
311
  it('should apply onFocus', function () {
302
312
  var onFocus = jest.fn();
303
313
 
304
- var _render21 = (0, _react2.render)(datePicker({
314
+ var _render22 = (0, _react2.render)(datePicker({
305
315
  onFocus: onFocus
306
316
  })),
307
- container = _render21.container;
317
+ container = _render22.container;
308
318
 
309
319
  var inputContent = container.querySelector('.textinput');
310
320
 
@@ -315,10 +325,10 @@ describe('DatePicker', function () {
315
325
  it('should apply onChange', function () {
316
326
  var onChange = jest.fn();
317
327
 
318
- var _render22 = (0, _react2.render)(datePicker({
328
+ var _render23 = (0, _react2.render)(datePicker({
319
329
  onChange: onChange
320
330
  })),
321
- container = _render22.container;
331
+ container = _render23.container;
322
332
 
323
333
  var inputContent = container.querySelector('.textinput');
324
334
 
@@ -333,10 +343,10 @@ describe('DatePicker', function () {
333
343
  it('should apply name', function () {
334
344
  var name = 'sus';
335
345
 
336
- var _render23 = (0, _react2.render)(datePicker({
346
+ var _render24 = (0, _react2.render)(datePicker({
337
347
  name: name
338
348
  })),
339
- container = _render23.container;
349
+ container = _render24.container;
340
350
 
341
351
  var inputContent = container.querySelector('.textinput');
342
352
  expect(inputContent.name).toBe(name);
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.EN_US_FORMAT = exports.PT_BR_FORMAT = exports.getMomentValue = exports.getCalendarDropdownStyle = void 0;
7
+
8
+ var _moment = _interopRequireDefault(require("moment"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
+
12
+ var PT_BR_FORMAT = 'DD/MM/YYYY';
13
+ exports.PT_BR_FORMAT = PT_BR_FORMAT;
14
+ var EN_US_FORMAT = 'YYYY-MM-DD';
15
+ exports.EN_US_FORMAT = EN_US_FORMAT;
16
+
17
+ var getCalendarDropdownStyle = function getCalendarDropdownStyle(_ref) {
18
+ var topPosition = _ref.topPosition,
19
+ leftPosition = _ref.leftPosition,
20
+ width = _ref.width;
21
+ return "top: ".concat(topPosition, "px;\n left: ").concat(leftPosition, "px;\n width:").concat(width, "px");
22
+ };
23
+
24
+ exports.getCalendarDropdownStyle = getCalendarDropdownStyle;
25
+
26
+ var getMomentValue = function getMomentValue(value) {
27
+ var newValue = value;
28
+
29
+ if ((0, _moment["default"])(newValue, PT_BR_FORMAT).isValid()) {
30
+ newValue = (0, _moment["default"])(newValue, PT_BR_FORMAT).format(EN_US_FORMAT);
31
+ }
32
+
33
+ return typeof newValue === 'string' ? (0, _moment["default"])(newValue, EN_US_FORMAT) : newValue;
34
+ };
35
+
36
+ exports.getMomentValue = getMomentValue;
@@ -31,6 +31,8 @@ var _Dialog = _interopRequireDefault(require("./Dialog"));
31
31
 
32
32
  var _colorStyles = _interopRequireDefault(require("../../internals/colorStyles"));
33
33
 
34
+ var _helpers = require("./helpers");
35
+
34
36
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
35
37
 
36
38
  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); }
@@ -60,7 +62,6 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
60
62
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
61
63
 
62
64
  var CALENDAR_BUTTON_WIDTH = 24;
63
- var dateFormat = 'DD/MM/YYYY';
64
65
 
65
66
  var DatePicker = /*#__PURE__*/function (_Component) {
66
67
  _inherits(DatePicker, _Component);
@@ -78,7 +79,7 @@ var DatePicker = /*#__PURE__*/function (_Component) {
78
79
 
79
80
  var propsValue = props.value;
80
81
  _this.state = {
81
- value: propsValue ? (0, _moment["default"])(propsValue) : undefined,
82
+ value: propsValue ? (0, _helpers.getMomentValue)(propsValue) : undefined,
82
83
  // eslint-disable-next-line react/no-unused-state
83
84
  propsValue: propsValue,
84
85
  showCalendar: false,
@@ -116,7 +117,7 @@ var DatePicker = /*#__PURE__*/function (_Component) {
116
117
  var required = this.props.required;
117
118
  if (onDenied && onDenied.unvisible) return null;
118
119
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_BaseMask["default"], _extends({}, this.props, {
119
- value: !value ? ' ' : value.format(dateFormat),
120
+ value: !value ? ' ' : value.format(_helpers.PT_BR_FORMAT),
120
121
  mask: "00/00/0000",
121
122
  onComplete: function onComplete(e, date) {
122
123
  _this2.setValue(e, date);
@@ -136,7 +137,7 @@ var DatePicker = /*#__PURE__*/function (_Component) {
136
137
  inputRef: function inputRef(el) {
137
138
  _this2.inputRef = el;
138
139
  },
139
- rightElements: [this.getButtonOpen()],
140
+ rightElements: this.getButtonOpen(),
140
141
  required: required,
141
142
  handlerSetOnDenied: this.setOnDenied
142
143
  })), showCalendar && this.getWrapperComponent());
@@ -154,9 +155,9 @@ Object.defineProperty(DatePicker, "getDerivedStateFromProps", {
154
155
  var value = props.value;
155
156
  var propsValue = state.propsValue;
156
157
 
157
- if (value && (0, _moment["default"])(value, dateFormat).format() !== 'Invalid date' && (0, _moment["default"])(propsValue, dateFormat).format() !== (0, _moment["default"])(value, dateFormat).format()) {
158
+ if (value && (0, _moment["default"])(value, _helpers.EN_US_FORMAT).format() !== 'Invalid date' && (0, _moment["default"])(propsValue, _helpers.EN_US_FORMAT).format() !== (0, _moment["default"])(value, _helpers.EN_US_FORMAT).format()) {
158
159
  return {
159
- value: (0, _moment["default"])(value),
160
+ value: (0, _moment["default"])(value, _helpers.EN_US_FORMAT),
160
161
  propsValue: value
161
162
  };
162
163
  } else if (!value && value !== propsValue) {
@@ -262,8 +263,8 @@ var _initialiseProps = function _initialiseProps() {
262
263
  var onChange = _this3.props.onChange;
263
264
 
264
265
  if (onChange) {
265
- if ((0, _moment["default"])(_value, dateFormat, true).isValid()) {
266
- var newValue = (0, _moment["default"])(_value, dateFormat).format('YYYY-MM-DD');
266
+ if ((0, _moment["default"])(_value, _helpers.PT_BR_FORMAT, true).isValid()) {
267
+ var newValue = (0, _moment["default"])(_value, _helpers.PT_BR_FORMAT).format(_helpers.EN_US_FORMAT);
267
268
  var obj = {
268
269
  target: {
269
270
  value: newValue,
@@ -281,7 +282,8 @@ var _initialiseProps = function _initialiseProps() {
281
282
  onChange(_obj, _value);
282
283
 
283
284
  _this3.setState({
284
- value: undefined
285
+ value: undefined,
286
+ showCalendar: false
285
287
  });
286
288
  }
287
289
  }
@@ -309,7 +311,7 @@ var _initialiseProps = function _initialiseProps() {
309
311
  if (_this3.props.shouldCloseOnSelect) showCalendar = false;
310
312
 
311
313
  _this3.setState({
312
- value: (0, _moment["default"])(_value2, dateFormat),
314
+ value: (0, _moment["default"])(_value2, _helpers.PT_BR_FORMAT),
313
315
  showCalendar: showCalendar
314
316
  });
315
317
  }
@@ -68,7 +68,8 @@ function IMaskHOC(ComposedComponent) {
68
68
  unvisible = _this$state$onDenied.unvisible,
69
69
  disabled = _this$state$onDenied.disabled,
70
70
  readOnly = _this$state$onDenied.readOnly;
71
- _this.dontInitMask = hideContent || unvisible;
71
+ var skeletonize = _this.state.currentProps.skeletonize;
72
+ _this.dontInitMask = hideContent || unvisible || skeletonize;
72
73
  _this.disableCallbacks = disabled || readOnly;
73
74
  return _this;
74
75
  }
@@ -73,10 +73,11 @@ var withTooltip = function withTooltip(WrappedComponent) {
73
73
  tooltipDimensions = _useState8[0],
74
74
  setTooltipDimensions = _useState8[1];
75
75
 
76
- var targetElement = (0, _react.useRef)();
76
+ var targetElement = (0, _react.useRef)(null);
77
+ var tooltipElement = (0, _react.useRef)(null);
77
78
 
78
79
  var onMouseOver = function onMouseOver(e) {
79
- if (targetElement.current.contains(e.target)) {
80
+ if (targetElement && targetElement.current && targetElement.current.contains(e.target)) {
80
81
  setShowTooltip(true);
81
82
  } else setShowTooltip(false);
82
83
  };
@@ -116,9 +117,10 @@ var withTooltip = function withTooltip(WrappedComponent) {
116
117
  height = tooltipDimensions.height;
117
118
  var targetDimensions = targetElement.current.getBoundingClientRect();
118
119
  var targetVerticalCenter = (targetDimensions.top + targetDimensions.bottom) / 2;
119
- var style = "width: ".concat(width, "px");
120
- var left = targetDimensions.left + targetDimensions.width / 2 - width / 2;
121
- left = Math.min(left, document.body.clientWidth - width - space);
120
+ var tooltipClientWidth = tooltipElement.current && tooltipElement.current.clientWidth;
121
+ var style = "width: ".concat(typeof width === 'string' ? width : "".concat(width, "px"));
122
+ var left = targetDimensions.left + targetDimensions.width / 2 - tooltipClientWidth / 2;
123
+ left = Math.min(left, document.body.clientWidth - tooltipClientWidth - space);
122
124
  style += "; left: ".concat(Math.max(space, left), "px");
123
125
 
124
126
  switch (tooltipPosition) {
@@ -141,17 +143,17 @@ var withTooltip = function withTooltip(WrappedComponent) {
141
143
  break;
142
144
 
143
145
  case 'left':
144
- if (targetDimensions.left < width) {
146
+ if (targetDimensions.left < tooltipClientWidth) {
145
147
  setTooltipPosition('right');
146
148
  } else {
147
149
  style += "; top: ".concat(targetVerticalCenter + window.scrollY - height / 2, "px");
148
- style += "; left: ".concat(targetDimensions.left - width - 6, "px");
150
+ style += "; left: ".concat(targetDimensions.left - tooltipClientWidth - 6, "px");
149
151
  }
150
152
 
151
153
  break;
152
154
 
153
155
  case 'right':
154
- if (window.innerWidth - targetDimensions.right < width) {
156
+ if (window.innerWidth - targetDimensions.right < tooltipClientWidth) {
155
157
  setTooltipPosition('left');
156
158
  } else {
157
159
  style += "; top: ".concat(targetVerticalCenter + window.scrollY - height / 2, "px");
@@ -166,7 +168,7 @@ var withTooltip = function withTooltip(WrappedComponent) {
166
168
 
167
169
  setTooltipStyle(style);
168
170
  }
169
- }, [tooltipDimensions, targetElement.current, tooltipPosition]);
171
+ }, [tooltipDimensions, tooltipElement.current, targetElement.current, tooltipPosition]);
170
172
  (0, _react.useEffect)(function () {
171
173
  setTooltipPosition(props.tooltipPosition);
172
174
  }, [window.scrollY, window.scrollX, window.innerWidth]);
@@ -175,6 +177,7 @@ var withTooltip = function withTooltip(WrappedComponent) {
175
177
  if (tooltip) {
176
178
  return /*#__PURE__*/_react["default"].createElement(_tooltip["default"], {
177
179
  text: tooltip,
180
+ tooltipRef: tooltipElement,
178
181
  style: tooltipStyle,
179
182
  className: tooltipPosition,
180
183
  tooltipDimensions: tooltipDimensions,
@@ -202,7 +205,7 @@ var withTooltip = function withTooltip(WrappedComponent) {
202
205
  tooltipPosition: _propTypes["default"].string
203
206
  };
204
207
  EnhancedComponent.defaultProps = {
205
- tooltipWidth: undefined,
208
+ tooltipWidth: 'auto',
206
209
  space: 20,
207
210
  tooltip: '',
208
211
  tooltipPosition: 'bottom'
@@ -48,7 +48,8 @@ var DefaultLabel = function DefaultLabel(props) {
48
48
  size = props.size,
49
49
  iconAlign = props.iconAlign,
50
50
  bordered = props.bordered,
51
- permissionAttr = props.permissionAttr;
51
+ permissionAttr = props.permissionAttr,
52
+ skeletonize = props.skeletonize;
52
53
  var options = [_permissionValidations.OPTIONS_ON_DENIED.unvisible];
53
54
 
54
55
  var _useState = (0, _react.useState)((0, _permissionValidations.actionsOnPermissionDenied)(permissionAttr, options)),
@@ -56,7 +57,7 @@ var DefaultLabel = function DefaultLabel(props) {
56
57
  onDenied = _useState2[0];
57
58
 
58
59
  var getClass = function getClass() {
59
- return "label-component ".concat(className, " ").concat(customClass, " ").concat(bordered && '-bordered', " ").concat(disabled && '-disabled', " \n ").concat(size && "-".concat(size), "\n ").concat(iconAlign && "icon-".concat(iconAlign));
60
+ return "label-component ".concat(className, " ").concat(customClass, " ").concat(bordered ? '-bordered' : '', " ").concat(disabled ? '-disabled' : '', "\n ").concat(skeletonize ? '-skeletonized' : '', "\n ").concat(size ? "-".concat(size) : '', "\n ").concat(iconAlign ? "icon-".concat(iconAlign) : '');
60
61
  };
61
62
 
62
63
  var getIcon = function getIcon() {
@@ -94,7 +95,8 @@ DefaultLabel.defaultProps = {
94
95
  style: {},
95
96
  visible: true,
96
97
  disabled: false,
97
- permissionAttr: undefined
98
+ permissionAttr: undefined,
99
+ skeletonize: false
98
100
  };
99
101
  DefaultLabel.propTypes = {
100
102
  customClass: _propTypes["default"].string,
@@ -109,7 +111,8 @@ DefaultLabel.propTypes = {
109
111
  style: _propTypes["default"].object,
110
112
  visible: _propTypes["default"].bool,
111
113
  disabled: _propTypes["default"].bool,
112
- permissionAttr: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].arrayOf(_propTypes["default"].object)])
114
+ permissionAttr: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].arrayOf(_propTypes["default"].object)]),
115
+ skeletonize: _propTypes["default"].bool
113
116
  };
114
117
 
115
118
  var _default = (0, _withTooltip["default"])(DefaultLabel);
@@ -134,8 +134,8 @@ NavMenuItem.propTypes = {
134
134
  url: _propTypes["default"].string,
135
135
  customClass: _propTypes["default"].string,
136
136
  permissionAttr: _propTypes["default"].oneOfType([_propTypes["default"].object, _propTypes["default"].arrayOf(_propTypes["default"].object)]),
137
- minWidth: _propTypes["default"].oneOf([_propTypes["default"].string, _propTypes["default"].number]),
138
- maxWidth: _propTypes["default"].oneOf([_propTypes["default"].string, _propTypes["default"].number]),
137
+ minWidth: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
138
+ maxWidth: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
139
139
  columnsQtty: _propTypes["default"].number
140
140
  };
141
141
  NavMenuItem.defaultProps = {
@@ -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;
@@ -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;