linear-react-components-ui 0.4.75 → 0.4.76-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.js +2 -5
- package/.tool-versions +1 -0
- package/.vscode/settings.json +8 -9
- package/README.md +23 -0
- package/config/jest/cssTransform.js +14 -0
- package/config/jest/fileTransform.js +12 -0
- package/config/jest/storageMock.js +40 -0
- package/jest.config.js +18 -0
- package/lib/alerts/alert.spec.js +133 -0
- package/lib/assets/styles/dropdown.scss +25 -2
- package/lib/assets/styles/effects.scss +12 -0
- package/lib/assets/styles/floatMenu.scss +0 -1
- package/lib/assets/styles/multiSelect.scss +105 -0
- package/lib/assets/styles/panel.scss +0 -1
- package/lib/assets/styles/periodpicker.scss +65 -0
- package/lib/assets/styles/popover.scss +9 -11
- package/lib/assets/styles/progress.scss +8 -1
- package/lib/assets/styles/select.scss +1 -0
- package/lib/assets/styles/table.scss +13 -5
- package/lib/assets/styles/tabs.scss +77 -43
- package/lib/assets/styles/treeview.scss +32 -0
- package/lib/avatar/avatar.spec.js +190 -0
- package/lib/avatar/index.js +6 -2
- package/lib/badge/badge.spec.js +127 -0
- package/lib/badge/index.js +3 -5
- package/lib/buttons/DefaultButton.js +7 -1
- package/lib/buttons/buttons.spec.js +504 -0
- package/lib/calendar/calendar.spec.js +171 -0
- package/lib/checkbox/Label.js +37 -0
- package/lib/checkbox/checkbox.spec.js +215 -0
- package/lib/checkbox/index.js +21 -6
- package/lib/dialog/Custom.js +7 -1
- package/lib/dialog/base/index.js +18 -6
- package/lib/dialog/dialog.spec.js +488 -0
- package/lib/dialog/form/index.js +23 -4
- package/lib/drawer/Drawer.js +3 -0
- package/lib/drawer/Drawer.spec.js +258 -0
- package/lib/drawer/Header.js +4 -1
- package/lib/drawer/index.js +4 -1
- package/lib/dropdown/Popup.js +1 -0
- package/lib/dropdown/dropdown.spec.js +168 -0
- package/lib/dropdown/withDropdown.js +10 -4
- package/lib/fieldset/fieldset.spec.js +329 -0
- package/lib/form/Field.js +2 -0
- package/lib/form/FieldNumber.js +10 -2
- package/lib/form/FieldPeriod.js +100 -0
- package/lib/form/form.spec.js +285 -0
- package/lib/form/helpers.js +9 -1
- package/lib/form/index.js +76 -10
- package/lib/form/withFieldHOC.js +2 -0
- package/lib/form/withFormSecurity.js +106 -0
- package/lib/gridlayout/GridRow.js +1 -1
- package/lib/gridlayout/gridLayout.spec.js +169 -0
- package/lib/icons/helper.js +16 -0
- package/lib/icons/icons.spec.js +86 -0
- package/lib/icons/index.js +2 -0
- package/lib/inputs/base/InputTextBase.js +15 -5
- package/lib/inputs/base/base.spec.js +690 -0
- package/lib/inputs/color/color_input.spec.js +174 -0
- package/lib/inputs/color/index.js +2 -2
- package/lib/inputs/date/date.spec.js +344 -0
- package/lib/inputs/date/index.js +7 -6
- package/lib/inputs/mask/Cpf.js +9 -9
- package/lib/inputs/mask/input_mask.spec.js +590 -0
- package/lib/inputs/multiSelect/ActionButtons.js +68 -0
- package/lib/inputs/multiSelect/Dropdown.js +200 -0
- package/lib/inputs/multiSelect/helper.js +18 -0
- package/lib/inputs/multiSelect/index.js +343 -0
- package/lib/inputs/number/BaseNumber.js +1 -1
- package/lib/inputs/number/index.js +7 -5
- package/lib/inputs/number/numberfield.spec.js +215 -0
- package/lib/inputs/period/Dialog.js +38 -0
- package/lib/inputs/period/Dropdown.js +90 -0
- package/lib/inputs/period/PeriodList.js +79 -0
- package/lib/inputs/period/helper.js +118 -0
- package/lib/inputs/period/index.js +490 -0
- package/lib/inputs/search/search_input.spec.js +209 -0
- package/lib/inputs/select/Dropdown.js +4 -4
- package/lib/inputs/select/index.js +26 -3
- package/lib/inputs/select/multiple/index.js +9 -7
- package/lib/inputs/select/select.spec.js +391 -0
- package/lib/inputs/select/simple/index.js +30 -18
- package/lib/inputs/text/textfield.spec.js +215 -0
- package/lib/inputs/textarea/textarea.spec.js +59 -0
- package/lib/internals/withTooltip.js +83 -82
- package/lib/labelMessages/index.js +3 -2
- package/lib/labelMessages/labelMessages.spec.js +176 -0
- package/lib/labels/label.spec.js +162 -0
- package/lib/list/Item.js +3 -3
- package/lib/list/index.js +21 -10
- package/lib/list/list.spec.js +611 -0
- package/lib/menus/float/MenuItem.js +25 -8
- package/lib/menus/float/float-menu.spec.js +221 -0
- package/lib/menus/sidenav/index.js +7 -3
- package/lib/menus/sidenav/popup_menu_search/index.js +1 -1
- package/lib/menus/sidenav/sidenav.spec.js +312 -0
- package/lib/noPermission/index.js +2 -1
- package/lib/panel/panel.spec.js +216 -0
- package/lib/popover/index.js +2 -1
- package/lib/popover/popover.spec.js +146 -0
- package/lib/progress/Bar.js +40 -9
- package/lib/progress/index.js +12 -4
- package/lib/progress/progress.spec.js +86 -0
- package/lib/radio/radio.spec.js +189 -0
- package/lib/spinner/SpinnerLoading.js +14 -24
- package/lib/spinner/index.js +6 -1
- package/lib/spinner/spinner.spec.js +152 -0
- package/lib/split/Split.js +10 -12
- package/lib/split/split.spec.js +151 -0
- package/lib/table/Header.js +3 -1
- package/lib/table/Row.js +2 -5
- package/lib/table/index.js +1 -4
- package/lib/table/table.spec.js +352 -0
- package/lib/tabs/DropdownItems.js +84 -0
- package/lib/tabs/Menu.js +18 -5
- package/lib/tabs/MenuItems.js +7 -7
- package/lib/tabs/Panel.js +1 -3
- package/lib/tabs/index.js +126 -17
- package/lib/tabs/tabs.spec.js +346 -0
- package/lib/toolbar/index.js +8 -4
- package/lib/toolbar/toolbar.spec.js +394 -0
- package/lib/tooltip/index.js +13 -0
- package/lib/tooltip/tooltip.spec.js +203 -0
- package/lib/treeview/Node.js +288 -18
- package/lib/treeview/index.js +448 -35
- package/lib/treeview/treeview.spec.js +261 -0
- package/package.json +19 -9
- package/.DS_Store +0 -0
package/lib/treeview/Node.js
CHANGED
|
@@ -11,18 +11,42 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
13
|
|
|
14
|
+
var _uuid = _interopRequireDefault(require("uuid"));
|
|
15
|
+
|
|
16
|
+
var _lodash = _interopRequireDefault(require("lodash"));
|
|
17
|
+
|
|
14
18
|
var _checkbox = _interopRequireDefault(require("../checkbox"));
|
|
15
19
|
|
|
16
20
|
var _icons = _interopRequireDefault(require("../icons"));
|
|
17
21
|
|
|
18
22
|
var _constants = require("./constants");
|
|
19
23
|
|
|
24
|
+
var _buttons = _interopRequireDefault(require("../buttons"));
|
|
25
|
+
|
|
26
|
+
var _list = _interopRequireWildcard(require("../list"));
|
|
27
|
+
|
|
28
|
+
var _toolbar = _interopRequireWildcard(require("../toolbar"));
|
|
29
|
+
|
|
20
30
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
21
31
|
|
|
22
32
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
33
|
|
|
24
34
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
25
35
|
|
|
36
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
37
|
+
|
|
38
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
39
|
+
|
|
40
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
41
|
+
|
|
42
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
43
|
+
|
|
44
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
45
|
+
|
|
46
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
47
|
+
|
|
48
|
+
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); }
|
|
49
|
+
|
|
26
50
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
27
51
|
|
|
28
52
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
@@ -59,17 +83,21 @@ var TreeNode = /*#__PURE__*/function (_Component) {
|
|
|
59
83
|
enumerable: true,
|
|
60
84
|
writable: true,
|
|
61
85
|
value: function value() {
|
|
62
|
-
var
|
|
86
|
+
var _this$props = _this.props,
|
|
87
|
+
node = _this$props.node,
|
|
88
|
+
alwaysShowArrow = _this$props.alwaysShowArrow;
|
|
63
89
|
|
|
64
90
|
var span = /*#__PURE__*/_react["default"].createElement("noscript", null);
|
|
65
91
|
|
|
66
|
-
if (node.itens && node.itens.length > 0) {
|
|
92
|
+
if (node.itens && node.itens.length > 0 || alwaysShowArrow) {
|
|
67
93
|
span = /*#__PURE__*/_react["default"].createElement("span", {
|
|
68
94
|
onKeyPress: null,
|
|
69
95
|
tabIndex: 0,
|
|
70
96
|
role: "button",
|
|
71
97
|
className: "opencloseicon",
|
|
72
|
-
onClick:
|
|
98
|
+
onClick: function onClick() {
|
|
99
|
+
return _this.openCloseTree(node);
|
|
100
|
+
}
|
|
73
101
|
}, /*#__PURE__*/_react["default"].createElement(_icons["default"], {
|
|
74
102
|
name: _this.state.isVisible ? 'up' : 'down',
|
|
75
103
|
size: 10
|
|
@@ -80,52 +108,278 @@ var TreeNode = /*#__PURE__*/function (_Component) {
|
|
|
80
108
|
}
|
|
81
109
|
});
|
|
82
110
|
Object.defineProperty(_assertThisInitialized(_this), "openCloseTree", {
|
|
111
|
+
configurable: true,
|
|
112
|
+
enumerable: true,
|
|
113
|
+
writable: true,
|
|
114
|
+
value: function value(node) {
|
|
115
|
+
var _this$state = _this.state,
|
|
116
|
+
isVisible = _this$state.isVisible,
|
|
117
|
+
wasOpened = _this$state.wasOpened;
|
|
118
|
+
var handlerOnNodeOpen = _this.props.handlerOnNodeOpen;
|
|
119
|
+
var nextState = {
|
|
120
|
+
isVisible: !isVisible
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
if (!wasOpened && handlerOnNodeOpen) {
|
|
124
|
+
nextState = _extends({}, nextState, {
|
|
125
|
+
wasOpened: true
|
|
126
|
+
});
|
|
127
|
+
handlerOnNodeOpen(node);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
_this.setState(nextState);
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
Object.defineProperty(_assertThisInitialized(_this), "handleShowNodeElements", {
|
|
134
|
+
configurable: true,
|
|
135
|
+
enumerable: true,
|
|
136
|
+
writable: true,
|
|
137
|
+
value: function value() {
|
|
138
|
+
var _this$state2 = _this.state,
|
|
139
|
+
showNodeElements = _this$state2.showNodeElements,
|
|
140
|
+
keepMenuOpened = _this$state2.keepMenuOpened;
|
|
141
|
+
if (!showNodeElements) _this.setState({
|
|
142
|
+
showNodeElements: true
|
|
143
|
+
});else if (showNodeElements && !keepMenuOpened) {
|
|
144
|
+
_this.setState({
|
|
145
|
+
showNodeElements: false
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
Object.defineProperty(_assertThisInitialized(_this), "updateElements", {
|
|
151
|
+
configurable: true,
|
|
152
|
+
enumerable: true,
|
|
153
|
+
writable: true,
|
|
154
|
+
value: function value(elements) {
|
|
155
|
+
var _this$props2 = _this.props,
|
|
156
|
+
node = _this$props2.node,
|
|
157
|
+
nodeElementsValidations = _this$props2.nodeElementsValidations;
|
|
158
|
+
var updatedElements = [];
|
|
159
|
+
|
|
160
|
+
if (elements) {
|
|
161
|
+
updatedElements = _react["default"].Children.map(elements, function (element) {
|
|
162
|
+
if ( /*#__PURE__*/_react["default"].isValidElement(element) && element.props) {
|
|
163
|
+
var _element$props = element.props,
|
|
164
|
+
validationKey = _element$props.validationKey,
|
|
165
|
+
onNodeElementClick = _element$props.onNodeElementClick;
|
|
166
|
+
var elementBehavior;
|
|
167
|
+
var newProps = {};
|
|
168
|
+
|
|
169
|
+
if (nodeElementsValidations && validationKey) {
|
|
170
|
+
elementBehavior = _this.validateNodeElement(validationKey);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
if (onNodeElementClick) {
|
|
174
|
+
newProps = _extends({}, newProps, {
|
|
175
|
+
onClick: function onClick(e) {
|
|
176
|
+
onNodeElementClick(node);
|
|
177
|
+
if (e.stopPropagation) e.stopPropagation();
|
|
178
|
+
},
|
|
179
|
+
onNodeElementClick: null
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
return /*#__PURE__*/_react["default"].cloneElement(element, _extends({}, elementBehavior, newProps));
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
return element;
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
return updatedElements;
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
Object.defineProperty(_assertThisInitialized(_this), "returnNodeRightElements", {
|
|
83
194
|
configurable: true,
|
|
84
195
|
enumerable: true,
|
|
85
196
|
writable: true,
|
|
86
197
|
value: function value() {
|
|
87
|
-
_this.
|
|
88
|
-
|
|
198
|
+
var nodeRightElements = _this.props.nodeRightElements;
|
|
199
|
+
|
|
200
|
+
var updatedNodeRightElements = _this.updateElements(nodeRightElements).map(function (element) {
|
|
201
|
+
var unvisible = element.props && 'visible' in element.props && !element.props.visible;
|
|
202
|
+
var style = unvisible ? {
|
|
203
|
+
display: 'none'
|
|
204
|
+
} : {};
|
|
205
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
206
|
+
style: style,
|
|
207
|
+
key: "element-".concat(_uuid["default"].v1()),
|
|
208
|
+
className: "element"
|
|
209
|
+
}, element);
|
|
89
210
|
});
|
|
211
|
+
|
|
212
|
+
return updatedNodeRightElements.length > 0 ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
213
|
+
className: "node-rightelements"
|
|
214
|
+
}, updatedNodeRightElements) : null;
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
Object.defineProperty(_assertThisInitialized(_this), "returnNodeToolbarElements", {
|
|
218
|
+
configurable: true,
|
|
219
|
+
enumerable: true,
|
|
220
|
+
writable: true,
|
|
221
|
+
value: function value() {
|
|
222
|
+
var nodeToolbarElements = _this.props.nodeToolbarElements;
|
|
223
|
+
|
|
224
|
+
var updatedNodeRightElements = _this.updateElements(nodeToolbarElements);
|
|
225
|
+
|
|
226
|
+
return updatedNodeRightElements.length > 0 ? /*#__PURE__*/_react["default"].createElement(_toolbar["default"], {
|
|
227
|
+
customClass: "node-toolbarelements"
|
|
228
|
+
}, /*#__PURE__*/_react["default"].createElement(_toolbar.ToolBarGroup, null, updatedNodeRightElements)) : null;
|
|
90
229
|
}
|
|
91
230
|
});
|
|
231
|
+
Object.defineProperty(_assertThisInitialized(_this), "validateNodeElement", {
|
|
232
|
+
configurable: true,
|
|
233
|
+
enumerable: true,
|
|
234
|
+
writable: true,
|
|
235
|
+
value: function value(validationKey) {
|
|
236
|
+
var _this$props3 = _this.props,
|
|
237
|
+
nodeElementsValidations = _this$props3.nodeElementsValidations,
|
|
238
|
+
node = _this$props3.node;
|
|
239
|
+
var validations = nodeElementsValidations[validationKey];
|
|
240
|
+
var options = {
|
|
241
|
+
disabled: {
|
|
242
|
+
disabled: true
|
|
243
|
+
},
|
|
244
|
+
unvisible: {
|
|
245
|
+
visible: false
|
|
246
|
+
}
|
|
247
|
+
};
|
|
248
|
+
var elementBehavior = {};
|
|
249
|
+
|
|
250
|
+
if (validations) {
|
|
251
|
+
validations.forEach(function (validation) {
|
|
252
|
+
var validator = validation.validator,
|
|
253
|
+
applyBehavior = validation.applyBehavior;
|
|
254
|
+
|
|
255
|
+
if (_lodash["default"].isEmpty(elementBehavior) && validator && validator(node)) {
|
|
256
|
+
elementBehavior = options[applyBehavior] || options.unvisible;
|
|
257
|
+
}
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
return elementBehavior;
|
|
262
|
+
}
|
|
263
|
+
});
|
|
264
|
+
_this.labelRef = /*#__PURE__*/_react["default"].createRef();
|
|
92
265
|
_this.state = {
|
|
93
|
-
isVisible: context.startNodesOpened
|
|
266
|
+
isVisible: context.startNodesOpened,
|
|
267
|
+
wasOpened: context.startNodesOpened,
|
|
268
|
+
showNodeElements: false,
|
|
269
|
+
keepMenuOpened: false
|
|
94
270
|
};
|
|
95
271
|
return _this;
|
|
96
272
|
}
|
|
97
273
|
|
|
98
274
|
_createClass(TreeNode, [{
|
|
275
|
+
key: "componentDidMount",
|
|
276
|
+
value: function componentDidMount() {
|
|
277
|
+
var _this$props4 = this.props,
|
|
278
|
+
isParent = _this$props4.isParent,
|
|
279
|
+
nodeToolbarElements = _this$props4.nodeToolbarElements,
|
|
280
|
+
nodeRightElements = _this$props4.nodeRightElements;
|
|
281
|
+
|
|
282
|
+
if (isParent || nodeRightElements || nodeToolbarElements) {
|
|
283
|
+
this.labelRef.current.addEventListener('mouseenter', this.handleShowNodeElements);
|
|
284
|
+
this.labelRef.current.addEventListener('mouseleave', this.handleShowNodeElements);
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
}, {
|
|
288
|
+
key: "componentWillUnmount",
|
|
289
|
+
value: function componentWillUnmount() {
|
|
290
|
+
var _this$props5 = this.props,
|
|
291
|
+
isParent = _this$props5.isParent,
|
|
292
|
+
nodeToolbarElements = _this$props5.nodeToolbarElements,
|
|
293
|
+
nodeRightElements = _this$props5.nodeRightElements;
|
|
294
|
+
|
|
295
|
+
if (isParent || nodeRightElements || nodeToolbarElements) {
|
|
296
|
+
this.labelRef.current.removeEventListener('mouseenter', this.handleShowNodeElements);
|
|
297
|
+
this.labelRef.current.removeEventListener('mouseleave', this.handleShowNodeElements);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
}, {
|
|
99
301
|
key: "render",
|
|
100
302
|
value: function render() {
|
|
101
303
|
var _this2 = this;
|
|
102
304
|
|
|
103
|
-
var _this$
|
|
104
|
-
node = _this$
|
|
105
|
-
children = _this$
|
|
305
|
+
var _this$props6 = this.props,
|
|
306
|
+
node = _this$props6.node,
|
|
307
|
+
children = _this$props6.children,
|
|
308
|
+
isParent = _this$props6.isParent,
|
|
309
|
+
onNodeClick = _this$props6.onNodeClick,
|
|
310
|
+
nodeMenuButtonSize = _this$props6.nodeMenuButtonSize;
|
|
311
|
+
var showNodeElements = this.state.showNodeElements;
|
|
106
312
|
return /*#__PURE__*/_react["default"].createElement(_constants.TreeviewContext.Consumer, null, function (_ref) {
|
|
107
313
|
var valuePropName = _ref.valuePropName,
|
|
108
314
|
labelPropName = _ref.labelPropName,
|
|
109
315
|
selectedIds = _ref.selectedIds,
|
|
110
|
-
|
|
316
|
+
handlerUpdateSelectedIds = _ref.handlerUpdateSelectedIds,
|
|
111
317
|
showCheckBox = _ref.showCheckBox,
|
|
112
318
|
requiredIds = _ref.requiredIds,
|
|
113
|
-
disabled = _ref.disabled
|
|
114
|
-
|
|
319
|
+
disabled = _ref.disabled,
|
|
320
|
+
handlerToggleCheckChildren = _ref.handlerToggleCheckChildren,
|
|
321
|
+
allowCheckAllChildren = _ref.allowCheckAllChildren,
|
|
322
|
+
requiredParentsIds = _ref.requiredParentsIds,
|
|
323
|
+
defaultDisabledTooltip = _ref.defaultDisabledTooltip;
|
|
324
|
+
var requiredNodes = [].concat(_toConsumableArray(requiredIds), _toConsumableArray(requiredParentsIds));
|
|
325
|
+
var required = requiredNodes.includes(node[valuePropName]);
|
|
115
326
|
var checked = selectedIds.includes(node[valuePropName]) || required;
|
|
116
327
|
return /*#__PURE__*/_react["default"].createElement("li", {
|
|
117
328
|
className: "treeviewitem"
|
|
118
329
|
}, _this2.getSpan(), /*#__PURE__*/_react["default"].createElement("div", {
|
|
119
|
-
className: "label"
|
|
330
|
+
className: "label",
|
|
331
|
+
ref: _this2.labelRef,
|
|
332
|
+
role: "button",
|
|
333
|
+
onKeyPress: null,
|
|
334
|
+
tabIndex: "-1",
|
|
335
|
+
onClick: onNodeClick ? function () {
|
|
336
|
+
return onNodeClick(node);
|
|
337
|
+
} : null
|
|
120
338
|
}, showCheckBox ? /*#__PURE__*/_react["default"].createElement(_checkbox["default"], {
|
|
121
339
|
checked: checked,
|
|
122
340
|
disabled: required || disabled,
|
|
123
341
|
value: "".concat(node[valuePropName]),
|
|
124
342
|
label: node[labelPropName],
|
|
125
|
-
|
|
126
|
-
|
|
343
|
+
tooltip: required ? defaultDisabledTooltip : '',
|
|
344
|
+
onChange: disabled || required ? undefined : function (e) {
|
|
345
|
+
handlerUpdateSelectedIds(node.id, e.target.checked, isParent);
|
|
346
|
+
}
|
|
347
|
+
}) : node[labelPropName], allowCheckAllChildren && showNodeElements && isParent ? /*#__PURE__*/_react["default"].createElement(_buttons["default"], {
|
|
348
|
+
dropdown: true,
|
|
349
|
+
dropdownAlign: "left",
|
|
350
|
+
size: nodeMenuButtonSize,
|
|
351
|
+
onClick: function onClick() {
|
|
352
|
+
_this2.setState({
|
|
353
|
+
keepMenuOpened: !_this2.state.keepMenuOpened
|
|
354
|
+
});
|
|
355
|
+
},
|
|
356
|
+
showIconDropdown: false,
|
|
357
|
+
iconName: "menu",
|
|
358
|
+
customClass: "node-menu",
|
|
359
|
+
boxShadow: false
|
|
360
|
+
}, /*#__PURE__*/_react["default"].createElement(_list["default"], {
|
|
361
|
+
condensed: true
|
|
362
|
+
}, /*#__PURE__*/_react["default"].createElement(_list.ListItem, {
|
|
363
|
+
text: "Marcar todos",
|
|
364
|
+
onClick: function onClick() {
|
|
365
|
+
handlerToggleCheckChildren(node.id, true);
|
|
366
|
+
|
|
367
|
+
_this2.setState({
|
|
368
|
+
showNodeElements: false,
|
|
369
|
+
keepMenuOpened: false
|
|
370
|
+
});
|
|
371
|
+
}
|
|
372
|
+
}), /*#__PURE__*/_react["default"].createElement(_list.ListItem, {
|
|
373
|
+
text: "Desmarcar todos",
|
|
374
|
+
onClick: function onClick() {
|
|
375
|
+
handlerToggleCheckChildren(node.id, false, required);
|
|
376
|
+
|
|
377
|
+
_this2.setState({
|
|
378
|
+
showNodeElements: false,
|
|
379
|
+
keepMenuOpened: false
|
|
380
|
+
});
|
|
127
381
|
}
|
|
128
|
-
}) :
|
|
382
|
+
}))) : null, showNodeElements && _this2.returnNodeRightElements(), showNodeElements && _this2.returnNodeToolbarElements()), /*#__PURE__*/_react["default"].createElement("ul", {
|
|
129
383
|
className: "nodelist"
|
|
130
384
|
}, _this2.state.isVisible && children));
|
|
131
385
|
});
|
|
@@ -140,12 +394,28 @@ TreeNode.propTypes = {
|
|
|
140
394
|
children: _propTypes["default"].any.isRequired,
|
|
141
395
|
childrenIds: _propTypes["default"].arrayOf(_propTypes["default"].number),
|
|
142
396
|
parentId: _propTypes["default"].number,
|
|
143
|
-
disabled: _propTypes["default"].bool
|
|
397
|
+
disabled: _propTypes["default"].bool,
|
|
398
|
+
isParent: _propTypes["default"].bool,
|
|
399
|
+
alwaysShowArrow: _propTypes["default"].bool,
|
|
400
|
+
nodeRightElements: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].object), _propTypes["default"].element, _propTypes["default"].object]),
|
|
401
|
+
nodeToolbarElements: _propTypes["default"].oneOfType([_propTypes["default"].arrayOf(_propTypes["default"].object), _propTypes["default"].element, _propTypes["default"].object]),
|
|
402
|
+
nodeMenuButtonSize: _propTypes["default"].oneOf(['mini', 'small', 'medium', 'large', 'default']),
|
|
403
|
+
onNodeClick: _propTypes["default"].func,
|
|
404
|
+
handlerOnNodeOpen: _propTypes["default"].func,
|
|
405
|
+
nodeElementsValidations: _propTypes["default"].object
|
|
144
406
|
};
|
|
145
407
|
TreeNode.defaultProps = {
|
|
146
408
|
childrenIds: [],
|
|
147
409
|
parentId: undefined,
|
|
148
|
-
disabled: false
|
|
410
|
+
disabled: false,
|
|
411
|
+
isParent: false,
|
|
412
|
+
alwaysShowArrow: false,
|
|
413
|
+
nodeRightElements: undefined,
|
|
414
|
+
nodeToolbarElements: undefined,
|
|
415
|
+
nodeMenuButtonSize: 'small',
|
|
416
|
+
onNodeClick: undefined,
|
|
417
|
+
handlerOnNodeOpen: undefined,
|
|
418
|
+
nodeElementsValidations: undefined
|
|
149
419
|
};
|
|
150
420
|
TreeNode.contextType = _constants.TreeviewContext;
|
|
151
421
|
var _default = TreeNode;
|