linear-react-components-ui 0.4.76-rc.5 → 0.4.76-rc.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/settings.json +2 -1
- package/README.md +0 -23
- package/lib/assets/styles/dropdown.scss +2 -25
- package/lib/assets/styles/effects.scss +0 -12
- package/lib/assets/styles/floatMenu.scss +1 -0
- package/lib/assets/styles/panel.scss +1 -0
- package/lib/assets/styles/progress.scss +1 -8
- package/lib/assets/styles/select.scss +0 -1
- package/lib/assets/styles/table.scss +5 -13
- package/lib/assets/styles/tabs.scss +43 -77
- package/lib/assets/styles/treeview.scss +0 -32
- package/lib/avatar/avatar.spec.js +6 -17
- package/lib/avatar/index.js +1 -1
- package/lib/buttons/DefaultButton.js +1 -7
- package/lib/checkbox/index.js +6 -20
- package/lib/dialog/base/index.js +6 -15
- package/lib/dialog/form/index.js +3 -16
- package/lib/drawer/index.js +1 -4
- package/lib/form/Field.js +0 -2
- package/lib/form/FieldNumber.js +2 -10
- package/lib/form/helpers.js +1 -9
- package/lib/form/index.js +224 -214
- package/lib/form/withFieldHOC.js +0 -2
- package/lib/icons/helper.js +0 -16
- package/lib/inputs/base/InputTextBase.js +10 -1
- package/lib/inputs/base/helpers.js +11 -3
- package/lib/inputs/number/BaseNumber.js +1 -1
- package/lib/inputs/number/index.js +5 -7
- package/lib/inputs/select/Dropdown.js +4 -4
- package/lib/inputs/select/index.js +3 -26
- package/lib/inputs/select/multiple/index.js +7 -9
- package/lib/inputs/select/simple/index.js +18 -30
- package/lib/internals/withTooltip.js +81 -82
- package/lib/list/Item.js +3 -3
- package/lib/list/index.js +10 -20
- package/lib/list/list.spec.js +85 -129
- package/lib/menus/float/MenuItem.js +8 -25
- package/lib/menus/sidenav/index.js +3 -7
- package/lib/menus/sidenav/popup_menu_search/index.js +1 -1
- package/lib/progress/Bar.js +9 -40
- package/lib/progress/index.js +4 -12
- package/lib/spinner/index.js +1 -6
- package/lib/split/Split.js +11 -5
- package/lib/table/Row.js +1 -1
- package/lib/tabs/Menu.js +5 -18
- package/lib/tabs/MenuItems.js +7 -7
- package/lib/tabs/Panel.js +3 -1
- package/lib/tabs/index.js +17 -126
- package/lib/toolbar/index.js +4 -8
- package/lib/tooltip/index.js +0 -12
- package/lib/treeview/Node.js +18 -288
- package/lib/treeview/index.js +35 -448
- package/package.json +8 -9
- package/.tool-versions +0 -1
- package/lib/assets/styles/multiSelect.scss +0 -105
- package/lib/assets/styles/periodpicker.scss +0 -65
- package/lib/checkbox/Label.js +0 -37
- package/lib/form/FieldPeriod.js +0 -100
- package/lib/form/withFormSecurity.js +0 -106
- package/lib/inputs/multiSelect/ActionButtons.js +0 -68
- package/lib/inputs/multiSelect/Dropdown.js +0 -200
- package/lib/inputs/multiSelect/helper.js +0 -18
- package/lib/inputs/multiSelect/index.js +0 -343
- package/lib/inputs/period/Dialog.js +0 -38
- package/lib/inputs/period/Dropdown.js +0 -90
- package/lib/inputs/period/PeriodList.js +0 -79
- package/lib/inputs/period/helper.js +0 -118
- package/lib/inputs/period/index.js +0 -490
- package/lib/tabs/DropdownItems.js +0 -84
package/lib/icons/helper.js
CHANGED
|
@@ -538,22 +538,6 @@ function getIcons() {
|
|
|
538
538
|
minusCircle: {
|
|
539
539
|
viewbox: '0 0 16 16',
|
|
540
540
|
paths: ['M8 0c-4.418 0-8 3.582-8 8s3.582 8 8 8 8-3.582 8-8-3.582-8-8-8zM8 14c-3.314 0-6-2.686-6-6s2.686-6 6-6c3.314 0 6 2.686 6 6s-2.686 6-6 6zM4 7h8v2h-8z']
|
|
541
|
-
},
|
|
542
|
-
zoomIn: {
|
|
543
|
-
viewbox: '0 0 16 16',
|
|
544
|
-
paths: ['M6 3h-1v2h-2v1h2v2h1v-2h2v-1h-2zM9.962 8.716c0.653-0.905 1.038-2.015 1.038-3.216 0-3.038-2.462-5.5-5.5-5.5s-5.5 2.462-5.5 5.5 2.462 5.5 5.5 5.5c1.201 0 2.312-0.385 3.216-1.038l5.284 6.038 2-2-6.038-5.284zM5.5 9.5c-2.209 0-4-1.791-4-4s1.791-4 4-4 4 1.791 4 4-1.791 4-4 4z']
|
|
545
|
-
},
|
|
546
|
-
zoomOut: {
|
|
547
|
-
viewbox: '0 0 16 16',
|
|
548
|
-
paths: ['M3 5h5v1h-5zM9.962 8.716c0.653-0.905 1.038-2.015 1.038-3.216 0-3.038-2.462-5.5-5.5-5.5s-5.5 2.462-5.5 5.5 2.462 5.5 5.5 5.5c1.201 0 2.312-0.385 3.216-1.038l5.284 6.038 2-2-6.038-5.284zM5.5 9.5c-2.209 0-4-1.791-4-4s1.791-4 4-4 4 1.791 4 4-1.791 4-4 4z']
|
|
549
|
-
},
|
|
550
|
-
flipVertical3: {
|
|
551
|
-
viewbox: '0 0 16 16',
|
|
552
|
-
paths: ['M10.854 1.854c0.143-0.143 0.186-0.358 0.108-0.545s-0.26-0.309-0.462-0.309h-10c-0.202 0-0.385 0.122-0.462 0.309-0.026 0.062-0.038 0.127-0.038 0.191 0 0.13 0.051 0.258 0.146 0.354l5 5c0.195 0.195 0.512 0.195 0.707 0l5-5z', 'M9 8.5c0-0.276 0.224-0.5 0.5-0.5h1c0.276 0 0.5 0.224 0.5 0.5s-0.224 0.5-0.5 0.5h-1c-0.276 0-0.5-0.224-0.5-0.5z', 'M6 8.5c0-0.276 0.224-0.5 0.5-0.5h1c0.276 0 0.5 0.224 0.5 0.5s-0.224 0.5-0.5 0.5h-1c-0.276 0-0.5-0.224-0.5-0.5z', 'M3 8.5c0-0.276 0.224-0.5 0.5-0.5h1c0.276 0 0.5 0.224 0.5 0.5s-0.224 0.5-0.5 0.5h-1c-0.276 0-0.5-0.224-0.5-0.5z', 'M0 8.5c0-0.276 0.224-0.5 0.5-0.5h1c0.276 0 0.5 0.224 0.5 0.5s-0.224 0.5-0.5 0.5h-1c-0.276 0-0.5-0.224-0.5-0.5z', 'M10.962 15.691c0.026-0.062 0.038-0.127 0.038-0.191 0-0.13-0.051-0.258-0.146-0.354l-5-5c-0.195-0.195-0.512-0.195-0.707 0l-5 5c-0.143 0.143-0.186 0.358-0.108 0.545s0.26 0.309 0.462 0.309h10c0.202 0 0.385-0.122 0.462-0.309zM2.009 14.875l3.491-3.491 3.491 3.491h-6.982z', 'M13 12.5c1.257-0.943 2-2.419 2-4 0-1.672-0.831-3.226-2.222-4.158-0.229-0.154-0.54-0.092-0.694 0.137s-0.092 0.54 0.137 0.694c1.113 0.745 1.778 1.989 1.778 3.327 0 1.313-0.64 2.534-1.716 3.284l-1.284-1.284v3.5h3.5l-1.5-1.5z']
|
|
553
|
-
},
|
|
554
|
-
flipVertical4: {
|
|
555
|
-
viewbox: '0 0 16 16',
|
|
556
|
-
paths: ['M0.854 5.146c-0.143-0.143-0.358-0.186-0.545-0.108s-0.309 0.26-0.309 0.462v10c0 0.202 0.122 0.385 0.309 0.462 0.062 0.026 0.127 0.038 0.191 0.038 0.13 0 0.258-0.051 0.354-0.146l5-5c0.195-0.195 0.195-0.512 0-0.707l-5-5z', 'M7.5 7c-0.276 0-0.5-0.224-0.5-0.5v-1c0-0.276 0.224-0.5 0.5-0.5s0.5 0.224 0.5 0.5v1c0 0.276-0.224 0.5-0.5 0.5z', 'M7.5 10c-0.276 0-0.5-0.224-0.5-0.5v-1c0-0.276 0.224-0.5 0.5-0.5s0.5 0.224 0.5 0.5v1c0 0.276-0.224 0.5-0.5 0.5z', 'M7.5 13c-0.276 0-0.5-0.224-0.5-0.5v-1c0-0.276 0.224-0.5 0.5-0.5s0.5 0.224 0.5 0.5v1c0 0.276-0.224 0.5-0.5 0.5z', 'M7.5 16c-0.276 0-0.5-0.224-0.5-0.5v-1c0-0.276 0.224-0.5 0.5-0.5s0.5 0.224 0.5 0.5v1c0 0.276-0.224 0.5-0.5 0.5z', 'M14.691 5.038c-0.062-0.026-0.127-0.038-0.191-0.038-0.13 0-0.258 0.051-0.354 0.146l-5 5c-0.195 0.195-0.195 0.512 0 0.707l5 5c0.143 0.143 0.358 0.186 0.545 0.108s0.309-0.26 0.309-0.462v-10c0-0.202-0.122-0.385-0.309-0.462zM13.875 13.991l-3.491-3.491 3.491-3.491v6.982z', 'M11.5 3c-0.943-1.257-2.419-2-4-2-1.672 0-3.226 0.831-4.158 2.222-0.154 0.229-0.092 0.54 0.137 0.694s0.54 0.092 0.694-0.137c0.745-1.113 1.989-1.778 3.327-1.778 1.313 0 2.534 0.64 3.284 1.716l-1.284 1.284h3.5v-3.5l-1.5 1.5z']
|
|
557
541
|
}
|
|
558
542
|
};
|
|
559
543
|
return icons;
|
|
@@ -11,6 +11,8 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
13
|
|
|
14
|
+
var _lodash = _interopRequireDefault(require("lodash"));
|
|
15
|
+
|
|
14
16
|
var _inputHOC = _interopRequireDefault(require("../inputHOC"));
|
|
15
17
|
|
|
16
18
|
require("../../assets/styles/input.scss");
|
|
@@ -111,7 +113,14 @@ var InputTextBase = function InputTextBase(props) {
|
|
|
111
113
|
id: id,
|
|
112
114
|
className: helpers.getInputClass(props),
|
|
113
115
|
ref: function ref(r) {
|
|
114
|
-
if (inputRef)
|
|
116
|
+
if (inputRef) {
|
|
117
|
+
if (!_lodash["default"].isFunction(inputRef)) {
|
|
118
|
+
inputRef.current = r;
|
|
119
|
+
} else {
|
|
120
|
+
inputRef(r);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
115
124
|
if (targetRef) targetRef(r);
|
|
116
125
|
}
|
|
117
126
|
};
|
|
@@ -7,9 +7,12 @@ exports.getRightElements = exports.getErrorMessages = exports.getInputWrapperCla
|
|
|
7
7
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
|
|
10
|
+
var _uuid = _interopRequireDefault(require("uuid"));
|
|
11
|
+
|
|
10
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
11
13
|
|
|
12
|
-
|
|
14
|
+
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); }
|
|
15
|
+
|
|
13
16
|
var getInputClass = function getInputClass(_ref) {
|
|
14
17
|
var textAlign = _ref.textAlign,
|
|
15
18
|
readOnly = _ref.readOnly;
|
|
@@ -39,11 +42,16 @@ var getErrorMessages = function getErrorMessages(messages) {
|
|
|
39
42
|
exports.getErrorMessages = getErrorMessages;
|
|
40
43
|
|
|
41
44
|
var getRightElements = function getRightElements(rightElements, errorMessages) {
|
|
42
|
-
if (errorMessages.length === 0) return rightElements;
|
|
43
45
|
var elements = rightElements || [];
|
|
46
|
+
var newElements = elements.map(function (element) {
|
|
47
|
+
return _extends({}, element, {
|
|
48
|
+
key: "rightelement-".concat(_uuid["default"].v1())
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
if (errorMessages.length === 0) return newElements;
|
|
44
52
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
45
53
|
className: "sidebuttons"
|
|
46
|
-
},
|
|
54
|
+
}, newElements);
|
|
47
55
|
};
|
|
48
56
|
|
|
49
57
|
exports.getRightElements = getRightElements;
|
|
@@ -49,7 +49,7 @@ var BaseNumber = function BaseNumber(props) {
|
|
|
49
49
|
};
|
|
50
50
|
|
|
51
51
|
BaseNumber.propTypes = {
|
|
52
|
-
value: _propTypes["default"].
|
|
52
|
+
value: _propTypes["default"].number,
|
|
53
53
|
leftElements: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].object), _propTypes["default"].element, _propTypes["default"].object]),
|
|
54
54
|
onBlur: _propTypes["default"].func,
|
|
55
55
|
returnFormattedValueOnBlur: _propTypes["default"].bool
|
|
@@ -40,19 +40,17 @@ var NumberField = function NumberField(props) {
|
|
|
40
40
|
value: (0, _format_number.numberToPtBR)(props.value),
|
|
41
41
|
textAlign: props.textAlign,
|
|
42
42
|
mask: Number,
|
|
43
|
-
|
|
44
|
-
scale: 0,
|
|
45
|
-
padFractionalZeros: false
|
|
43
|
+
scale: 0
|
|
46
44
|
}));
|
|
47
45
|
};
|
|
48
46
|
|
|
49
47
|
NumberField.propTypes = {
|
|
50
|
-
|
|
51
|
-
|
|
48
|
+
textAlign: _propTypes["default"].string,
|
|
49
|
+
value: _propTypes["default"].string
|
|
52
50
|
};
|
|
53
51
|
NumberField.defaultProps = {
|
|
54
|
-
|
|
55
|
-
|
|
52
|
+
textAlign: 'right',
|
|
53
|
+
value: ''
|
|
56
54
|
};
|
|
57
55
|
var _default = NumberField;
|
|
58
56
|
exports["default"] = _default;
|
|
@@ -105,6 +105,9 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
105
105
|
onFocus: function onFocus() {
|
|
106
106
|
handleOnFocus();
|
|
107
107
|
},
|
|
108
|
+
onBlur: function onBlur() {
|
|
109
|
+
handleOnBlur();
|
|
110
|
+
},
|
|
108
111
|
onChange: function onChange(e) {
|
|
109
112
|
handleOnFilter(e.target.value);
|
|
110
113
|
},
|
|
@@ -129,10 +132,7 @@ var Dropdown = function Dropdown(_ref) {
|
|
|
129
132
|
tabIndex: "-1",
|
|
130
133
|
onKeyPress: function onKeyPress() {},
|
|
131
134
|
onClick: function onClick() {
|
|
132
|
-
if (!disabled)
|
|
133
|
-
handleOnSelect(item);
|
|
134
|
-
handleOnBlur(item);
|
|
135
|
-
}
|
|
135
|
+
if (!disabled) handleOnSelect(item);
|
|
136
136
|
}
|
|
137
137
|
}, item.iconName && /*#__PURE__*/_react["default"].createElement(_icons["default"], {
|
|
138
138
|
name: item.iconName,
|
|
@@ -15,40 +15,17 @@ var _simple = _interopRequireDefault(require("./simple"));
|
|
|
15
15
|
|
|
16
16
|
require("../../assets/styles/select.scss");
|
|
17
17
|
|
|
18
|
-
var _gridlayout = _interopRequireDefault(require("../../gridlayout"));
|
|
19
|
-
|
|
20
|
-
var _excluded = ["gridLayout", "multiple"];
|
|
21
|
-
|
|
22
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
23
19
|
|
|
24
|
-
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
25
|
-
|
|
26
|
-
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
27
|
-
|
|
28
20
|
var SelectField = function SelectField(props) {
|
|
29
|
-
|
|
30
|
-
multiple = props.multiple,
|
|
31
|
-
newProps = _objectWithoutProperties(props, _excluded);
|
|
32
|
-
|
|
33
|
-
var component = multiple ? /*#__PURE__*/_react["default"].createElement(_multiple["default"], newProps) : /*#__PURE__*/_react["default"].createElement(_simple["default"], newProps);
|
|
34
|
-
|
|
35
|
-
if (gridLayout !== undefined) {
|
|
36
|
-
return /*#__PURE__*/_react["default"].createElement(_gridlayout["default"], {
|
|
37
|
-
customClass: "-withinput",
|
|
38
|
-
cols: gridLayout
|
|
39
|
-
}, component);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
return component;
|
|
21
|
+
return props.multiple ? /*#__PURE__*/_react["default"].createElement(_multiple["default"], props) : /*#__PURE__*/_react["default"].createElement(_simple["default"], props);
|
|
43
22
|
};
|
|
44
23
|
|
|
45
24
|
SelectField.propTypes = {
|
|
46
|
-
multiple: _propTypes["default"].bool
|
|
47
|
-
gridLayout: _propTypes["default"].string
|
|
25
|
+
multiple: _propTypes["default"].bool
|
|
48
26
|
};
|
|
49
27
|
SelectField.defaultProps = {
|
|
50
|
-
multiple: false
|
|
51
|
-
gridLayout: undefined
|
|
28
|
+
multiple: false
|
|
52
29
|
};
|
|
53
30
|
var _default = SelectField;
|
|
54
31
|
exports["default"] = _default;
|
|
@@ -84,7 +84,6 @@ var MultipleSelect = /*#__PURE__*/function (_Component) {
|
|
|
84
84
|
_this.componentId = "select-component".concat(_uuid["default"].v1());
|
|
85
85
|
_this.componentRef = /*#__PURE__*/_react["default"].createRef();
|
|
86
86
|
_this.state = {
|
|
87
|
-
valueFromProps: null,
|
|
88
87
|
dataCombo: props.dataSource,
|
|
89
88
|
currents: [],
|
|
90
89
|
selected: null,
|
|
@@ -386,19 +385,18 @@ Object.defineProperty(MultipleSelect, "getDerivedStateFromProps", {
|
|
|
386
385
|
value = props.value,
|
|
387
386
|
idKey = props.idKey;
|
|
388
387
|
|
|
389
|
-
if (
|
|
390
|
-
return {
|
|
391
|
-
valueFromProps: value,
|
|
392
|
-
currents: dataSource.filter(function (item) {
|
|
393
|
-
return value.includes(item[idKey]);
|
|
394
|
-
})
|
|
395
|
-
};
|
|
396
|
-
} else if (dataSource !== state.dataCombo) {
|
|
388
|
+
if (dataSource !== state.dataCombo) {
|
|
397
389
|
var dataCombo = remoteSearch ? dataSource : (0, _helper.getFilteredMultipleDataCombo)(_extends({}, props, state));
|
|
398
390
|
return {
|
|
399
391
|
dataCombo: dataCombo,
|
|
400
392
|
selected: dataSource.length > 0 && remoteSearch ? dataSource[0] : null
|
|
401
393
|
};
|
|
394
|
+
} else if (value !== null && dataSource.length > 0) {
|
|
395
|
+
return {
|
|
396
|
+
currents: dataSource.filter(function (item) {
|
|
397
|
+
return value.includes(item[idKey]);
|
|
398
|
+
})
|
|
399
|
+
};
|
|
402
400
|
}
|
|
403
401
|
|
|
404
402
|
return null;
|
|
@@ -127,6 +127,9 @@ var SimpleSelect = /*#__PURE__*/function (_Component) {
|
|
|
127
127
|
onFocus: function onFocus() {
|
|
128
128
|
_this2.onFocus();
|
|
129
129
|
},
|
|
130
|
+
onBlur: function onBlur(e) {
|
|
131
|
+
_this2.onBlur(e);
|
|
132
|
+
},
|
|
130
133
|
onChange: function onChange(e) {
|
|
131
134
|
_this2.onFilter(e.target.value);
|
|
132
135
|
},
|
|
@@ -290,11 +293,18 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
290
293
|
enumerable: true,
|
|
291
294
|
writable: true,
|
|
292
295
|
value: function value(selected) {
|
|
293
|
-
var
|
|
296
|
+
var _this3$props2 = _this3.props,
|
|
297
|
+
onChange = _this3$props2.onChange,
|
|
298
|
+
idKey = _this3$props2.idKey,
|
|
299
|
+
name = _this3$props2.name;
|
|
294
300
|
|
|
295
301
|
if (onChange) {
|
|
296
|
-
var event =
|
|
297
|
-
|
|
302
|
+
var event = {
|
|
303
|
+
target: {
|
|
304
|
+
name: name,
|
|
305
|
+
value: selected ? selected[idKey] : undefined
|
|
306
|
+
}
|
|
307
|
+
};
|
|
298
308
|
onChange(event);
|
|
299
309
|
}
|
|
300
310
|
}
|
|
@@ -354,15 +364,9 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
354
364
|
configurable: true,
|
|
355
365
|
enumerable: true,
|
|
356
366
|
writable: true,
|
|
357
|
-
value: function value(
|
|
367
|
+
value: function value(e) {
|
|
358
368
|
var onBlur = _this3.props.onBlur;
|
|
359
|
-
|
|
360
|
-
if (onBlur) {
|
|
361
|
-
var event = _this3.getSelectEvent(selected);
|
|
362
|
-
|
|
363
|
-
onBlur(event);
|
|
364
|
-
}
|
|
365
|
-
|
|
369
|
+
if (onBlur) onBlur(e);
|
|
366
370
|
if (!_this3.state.insideComponent) _this3.setState({
|
|
367
371
|
opened: false,
|
|
368
372
|
isTyping: false
|
|
@@ -374,9 +378,9 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
374
378
|
enumerable: true,
|
|
375
379
|
writable: true,
|
|
376
380
|
value: function value(e) {
|
|
377
|
-
var _this3$
|
|
378
|
-
dataSource = _this3$
|
|
379
|
-
idKey = _this3$
|
|
381
|
+
var _this3$props3 = _this3.props,
|
|
382
|
+
dataSource = _this3$props3.dataSource,
|
|
383
|
+
idKey = _this3$props3.idKey;
|
|
380
384
|
var _this3$state = _this3.state,
|
|
381
385
|
selected = _this3$state.selected,
|
|
382
386
|
isTyping = _this3$state.isTyping;
|
|
@@ -417,22 +421,6 @@ var _initialiseProps = function _initialiseProps() {
|
|
|
417
421
|
});
|
|
418
422
|
}
|
|
419
423
|
});
|
|
420
|
-
Object.defineProperty(this, "getSelectEvent", {
|
|
421
|
-
configurable: true,
|
|
422
|
-
enumerable: true,
|
|
423
|
-
writable: true,
|
|
424
|
-
value: function value(selected) {
|
|
425
|
-
var _this3$props3 = _this3.props,
|
|
426
|
-
idKey = _this3$props3.idKey,
|
|
427
|
-
name = _this3$props3.name;
|
|
428
|
-
return {
|
|
429
|
-
target: {
|
|
430
|
-
name: name,
|
|
431
|
-
value: selected ? selected[idKey] : undefined
|
|
432
|
-
}
|
|
433
|
-
};
|
|
434
|
-
}
|
|
435
|
-
});
|
|
436
424
|
Object.defineProperty(this, "setOnDenied", {
|
|
437
425
|
configurable: true,
|
|
438
426
|
enumerable: true,
|
|
@@ -33,8 +33,6 @@ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "und
|
|
|
33
33
|
|
|
34
34
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
35
35
|
|
|
36
|
-
var TOOLTIP_INITIAL_HEIGHT = 40;
|
|
37
|
-
|
|
38
36
|
var hasTooltip = function hasTooltip(_ref) {
|
|
39
37
|
var tooltip = _ref.tooltip;
|
|
40
38
|
return tooltip;
|
|
@@ -47,32 +45,34 @@ var getDisplayName = function getDisplayName(WrappedComponent) {
|
|
|
47
45
|
var withTooltip = function withTooltip(WrappedComponent) {
|
|
48
46
|
var EnhancedComponent = function EnhancedComponent(props) {
|
|
49
47
|
var tooltip = props.tooltip,
|
|
48
|
+
tooltipPosition = props.tooltipPosition,
|
|
50
49
|
tooltipWidth = props.tooltipWidth,
|
|
51
50
|
space = props.space;
|
|
52
51
|
|
|
53
|
-
var _useState = (0, _react.useState)(
|
|
52
|
+
var _useState = (0, _react.useState)(false),
|
|
54
53
|
_useState2 = _slicedToArray(_useState, 2),
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
showTooltip = _useState2[0],
|
|
55
|
+
setShowTooltip = _useState2[1];
|
|
57
56
|
|
|
58
|
-
var _useState3 = (0, _react.useState)(
|
|
57
|
+
var _useState3 = (0, _react.useState)({
|
|
58
|
+
width: tooltipWidth,
|
|
59
|
+
height: undefined
|
|
60
|
+
}),
|
|
59
61
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
60
|
-
|
|
61
|
-
|
|
62
|
+
tooltipDimensions = _useState4[0],
|
|
63
|
+
setTooltipDimensions = _useState4[1];
|
|
62
64
|
|
|
63
|
-
var _useState5 = (0, _react.useState)(
|
|
65
|
+
var _useState5 = (0, _react.useState)(true),
|
|
64
66
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
65
|
-
|
|
66
|
-
|
|
67
|
+
findScrollableParent = _useState6[0],
|
|
68
|
+
setFindScrollableParent = _useState6[1];
|
|
67
69
|
|
|
68
|
-
var _useState7 = (0, _react.useState)(
|
|
69
|
-
width: tooltipWidth,
|
|
70
|
-
height: TOOLTIP_INITIAL_HEIGHT
|
|
71
|
-
}),
|
|
70
|
+
var _useState7 = (0, _react.useState)(undefined),
|
|
72
71
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
73
|
-
|
|
74
|
-
|
|
72
|
+
dimensionsTargetElement = _useState8[0],
|
|
73
|
+
setDimensionsTargetElement = _useState8[1];
|
|
75
74
|
|
|
75
|
+
var scrollableParent = (0, _react.useRef)();
|
|
76
76
|
var targetElement = (0, _react.useRef)();
|
|
77
77
|
|
|
78
78
|
var onMouseOver = function onMouseOver(e) {
|
|
@@ -85,24 +85,58 @@ var withTooltip = function withTooltip(WrappedComponent) {
|
|
|
85
85
|
setShowTooltip(false);
|
|
86
86
|
};
|
|
87
87
|
|
|
88
|
-
var
|
|
89
|
-
|
|
88
|
+
var onParentScroll = function onParentScroll() {
|
|
89
|
+
var currentDimensions = targetElement.current.getBoundingClientRect();
|
|
90
|
+
|
|
91
|
+
if (targetElement.current && dimensionsTargetElement !== currentDimensions) {
|
|
92
|
+
return setDimensionsTargetElement(currentDimensions);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return null;
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
var getScrollableParent = function getScrollableParent(node) {
|
|
99
|
+
if (node === null || node.nodeName === '#document') {
|
|
100
|
+
return setFindScrollableParent(false);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
var _window$getComputedSt = window.getComputedStyle(node),
|
|
104
|
+
overflowY = _window$getComputedSt.overflowY;
|
|
105
|
+
|
|
106
|
+
var isScrollable = overflowY !== 'visible' && overflowY !== 'hidden';
|
|
107
|
+
|
|
108
|
+
if (isScrollable && node.scrollHeight > node.clientHeight) {
|
|
109
|
+
scrollableParent.current = node;
|
|
110
|
+
return setFindScrollableParent(false);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return getScrollableParent(node.parentNode);
|
|
90
114
|
};
|
|
91
115
|
|
|
92
116
|
(0, _react.useEffect)(function () {
|
|
93
117
|
if (hasTooltip(props)) {
|
|
94
118
|
document.addEventListener('mouseover', onMouseOver);
|
|
95
|
-
document.addEventListener('scroll', onAnyScroll, true);
|
|
96
119
|
|
|
97
120
|
if (targetElement && targetElement.current) {
|
|
98
121
|
targetElement.current.addEventListener('mouseout', onMouseOut);
|
|
99
122
|
}
|
|
123
|
+
|
|
124
|
+
if (targetElement && targetElement.current && findScrollableParent) {
|
|
125
|
+
getScrollableParent(targetElement.current);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
if (scrollableParent && scrollableParent.current) {
|
|
129
|
+
scrollableParent.current.addEventListener('scroll', onParentScroll);
|
|
130
|
+
}
|
|
100
131
|
}
|
|
101
132
|
|
|
102
133
|
return function () {
|
|
103
134
|
if (hasTooltip(props)) {
|
|
104
135
|
document.removeEventListener('mouseover', onMouseOver);
|
|
105
|
-
|
|
136
|
+
|
|
137
|
+
if (scrollableParent && scrollableParent.current) {
|
|
138
|
+
scrollableParent.current.removeEventListener('scroll', onParentScroll);
|
|
139
|
+
}
|
|
106
140
|
|
|
107
141
|
if (targetElement && targetElement.current) {
|
|
108
142
|
targetElement.current.removeEventListener('mouseout', onMouseOut);
|
|
@@ -110,74 +144,39 @@ var withTooltip = function withTooltip(WrappedComponent) {
|
|
|
110
144
|
}
|
|
111
145
|
};
|
|
112
146
|
}, []);
|
|
113
|
-
(0, _react.useEffect)(function () {
|
|
114
|
-
if (targetElement.current) {
|
|
115
|
-
var width = tooltipDimensions.width,
|
|
116
|
-
height = tooltipDimensions.height;
|
|
117
|
-
var targetDimensions = targetElement.current.getBoundingClientRect();
|
|
118
|
-
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);
|
|
122
|
-
style += "; left: ".concat(Math.max(space, left), "px");
|
|
123
|
-
|
|
124
|
-
switch (tooltipPosition) {
|
|
125
|
-
case 'top':
|
|
126
|
-
if (targetDimensions.top < height) {
|
|
127
|
-
setTooltipPosition('bottom');
|
|
128
|
-
} else {
|
|
129
|
-
style += "; top: ".concat(targetDimensions.top + window.scrollY - height - 5, "px");
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
break;
|
|
133
|
-
|
|
134
|
-
case 'bottom':
|
|
135
|
-
if (window.innerHeight - targetDimensions.bottom < height) {
|
|
136
|
-
setTooltipPosition('top');
|
|
137
|
-
} else {
|
|
138
|
-
style += "; top: ".concat(targetDimensions.top + window.scrollY + targetDimensions.height + 5, "px");
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
break;
|
|
142
|
-
|
|
143
|
-
case 'left':
|
|
144
|
-
if (targetDimensions.left < width) {
|
|
145
|
-
setTooltipPosition('right');
|
|
146
|
-
} else {
|
|
147
|
-
style += "; top: ".concat(targetVerticalCenter + window.scrollY - height / 2, "px");
|
|
148
|
-
style += "; left: ".concat(targetDimensions.left - width - 6, "px");
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
break;
|
|
152
|
-
|
|
153
|
-
case 'right':
|
|
154
|
-
if (window.innerWidth - targetDimensions.right < width) {
|
|
155
|
-
setTooltipPosition('left');
|
|
156
|
-
} else {
|
|
157
|
-
style += "; top: ".concat(targetVerticalCenter + window.scrollY - height / 2, "px");
|
|
158
|
-
style += "; left: ".concat(targetDimensions.left + targetDimensions.width + 5, "px");
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
break;
|
|
162
|
-
|
|
163
|
-
default:
|
|
164
|
-
style += '';
|
|
165
|
-
}
|
|
166
147
|
|
|
167
|
-
|
|
148
|
+
var getStyle = function getStyle() {
|
|
149
|
+
// where on the screen is the target
|
|
150
|
+
var width = tooltipDimensions.width,
|
|
151
|
+
height = tooltipDimensions.height;
|
|
152
|
+
var targetDimensions = dimensionsTargetElement || targetElement.current.getBoundingClientRect();
|
|
153
|
+
var targetVerticalCenter = (targetDimensions.top + targetDimensions.bottom) / 2;
|
|
154
|
+
var style = "width: ".concat(width + 2, "px");
|
|
155
|
+
var left = targetDimensions.left + targetDimensions.width / 2 - width / 2;
|
|
156
|
+
left = Math.min(left, document.body.clientWidth - width - space);
|
|
157
|
+
style += "; left: ".concat(Math.max(space, left), "px"); // when the position is informed
|
|
158
|
+
|
|
159
|
+
if (tooltipPosition === 'top') {
|
|
160
|
+
style += "; top: ".concat(targetDimensions.top + window.scrollY - height - 5, "px");
|
|
161
|
+
} else if (tooltipPosition === 'bottom') {
|
|
162
|
+
style += "; top: ".concat(targetDimensions.top + window.scrollY + targetDimensions.height + 5, "px");
|
|
163
|
+
} else if (tooltipPosition === 'left') {
|
|
164
|
+
style += "; top: ".concat(targetVerticalCenter + window.scrollY - height / 2, "px");
|
|
165
|
+
style += "; left: ".concat(targetDimensions.left - width - 6, "px");
|
|
166
|
+
} else if (tooltipPosition === 'right') {
|
|
167
|
+
style += "; top: ".concat(targetVerticalCenter + window.scrollY - height / 2, "px");
|
|
168
|
+
style += "; left: ".concat(targetDimensions.left + targetDimensions.width + 5, "px");
|
|
168
169
|
}
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
}, [window.scrollY, window.scrollX, window.innerWidth]);
|
|
170
|
+
|
|
171
|
+
return style;
|
|
172
|
+
};
|
|
173
173
|
|
|
174
174
|
var getTooltip = function getTooltip() {
|
|
175
175
|
if (tooltip) {
|
|
176
176
|
return /*#__PURE__*/_react["default"].createElement(_tooltip["default"], {
|
|
177
177
|
text: tooltip,
|
|
178
|
-
style:
|
|
178
|
+
style: getStyle(),
|
|
179
179
|
className: tooltipPosition,
|
|
180
|
-
tooltipDimensions: tooltipDimensions,
|
|
181
180
|
handlerSetDimensions: setTooltipDimensions
|
|
182
181
|
});
|
|
183
182
|
}
|
|
@@ -202,7 +201,7 @@ var withTooltip = function withTooltip(WrappedComponent) {
|
|
|
202
201
|
tooltipPosition: _propTypes["default"].string
|
|
203
202
|
};
|
|
204
203
|
EnhancedComponent.defaultProps = {
|
|
205
|
-
tooltipWidth:
|
|
204
|
+
tooltipWidth: 'auto',
|
|
206
205
|
space: 20,
|
|
207
206
|
tooltip: '',
|
|
208
207
|
tooltipPosition: 'bottom'
|
package/lib/list/Item.js
CHANGED
|
@@ -99,12 +99,12 @@ var Item = function Item(props) {
|
|
|
99
99
|
|
|
100
100
|
var getProps = function getProps() {
|
|
101
101
|
if (shouldDisable()) return undefined;
|
|
102
|
-
if (_onClick === undefined && dropdownContext === undefined
|
|
102
|
+
if (_onClick === undefined && dropdownContext === undefined) return null;
|
|
103
103
|
return {
|
|
104
104
|
onClick: function onClick(e) {
|
|
105
|
-
if (_onClick !== undefined) _onClick(e
|
|
105
|
+
if (_onClick !== undefined) _onClick(e);
|
|
106
106
|
if (dropdownContext) dropdownContext.handleDropdownClose();
|
|
107
|
-
if (selectable
|
|
107
|
+
if (selectable && handleSelectItem(itemId)) ;
|
|
108
108
|
},
|
|
109
109
|
onKeyDown: null,
|
|
110
110
|
role: 'button',
|
package/lib/list/index.js
CHANGED
|
@@ -58,30 +58,24 @@ function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "und
|
|
|
58
58
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
59
59
|
|
|
60
60
|
var List = function List(props) {
|
|
61
|
-
var children = props.children,
|
|
62
|
-
customClass = props.customClass,
|
|
63
|
-
condensed = props.condensed,
|
|
64
|
-
transparent = props.transparent,
|
|
65
|
-
style = props.style,
|
|
66
|
-
selectable = props.selectable,
|
|
67
|
-
onSelectItem = props.onSelectItem;
|
|
68
|
-
|
|
69
61
|
var _useState = (0, _react.useState)(''),
|
|
70
62
|
_useState2 = _slicedToArray(_useState, 2),
|
|
71
63
|
selectedItemId = _useState2[0],
|
|
72
64
|
setSelectedItemId = _useState2[1];
|
|
73
65
|
|
|
66
|
+
var children = props.children,
|
|
67
|
+
customClass = props.customClass,
|
|
68
|
+
condensed = props.condensed,
|
|
69
|
+
transparent = props.transparent,
|
|
70
|
+
style = props.style,
|
|
71
|
+
selectable = props.selectable;
|
|
74
72
|
var contextValues = {
|
|
75
73
|
selectable: selectable,
|
|
76
74
|
selectedItemId: selectedItemId,
|
|
77
|
-
handleSelectItem: function handleSelectItem(selectedId
|
|
78
|
-
|
|
79
|
-
if (onSelectItem) onSelectItem(selectedId);
|
|
75
|
+
handleSelectItem: function handleSelectItem(selectedId) {
|
|
76
|
+
setSelectedItemId(selectedId);
|
|
80
77
|
}
|
|
81
78
|
};
|
|
82
|
-
(0, _react.useEffect)(function () {
|
|
83
|
-
if (onSelectItem && props.selectedItemId) setSelectedItemId(props.selectedItemId);
|
|
84
|
-
}, [props.selectedItemId]);
|
|
85
79
|
return /*#__PURE__*/_react["default"].createElement(_helpers["default"].Provider, {
|
|
86
80
|
value: contextValues
|
|
87
81
|
}, /*#__PURE__*/_react["default"].createElement("ul", {
|
|
@@ -97,18 +91,14 @@ List.propTypes = {
|
|
|
97
91
|
customClass: _propTypes["default"].string,
|
|
98
92
|
condensed: _propTypes["default"].bool,
|
|
99
93
|
selectable: _propTypes["default"].bool,
|
|
100
|
-
style: _propTypes["default"].object
|
|
101
|
-
onSelectItem: _propTypes["default"].func,
|
|
102
|
-
selectedItemId: _propTypes["default"].string
|
|
94
|
+
style: _propTypes["default"].object
|
|
103
95
|
};
|
|
104
96
|
List.defaultProps = {
|
|
105
97
|
customClass: '',
|
|
106
98
|
condensed: false,
|
|
107
99
|
transparent: false,
|
|
108
100
|
selectable: false,
|
|
109
|
-
style: {}
|
|
110
|
-
onSelectItem: undefined,
|
|
111
|
-
selectedItemId: ''
|
|
101
|
+
style: {}
|
|
112
102
|
};
|
|
113
103
|
var _default = List;
|
|
114
104
|
exports["default"] = _default;
|