@sis-cc/dotstatsuite-visions 7.19.1 → 7.20.1

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 (45) hide show
  1. package/es/AdvancedFilterDialog/AdvancedFilterDialog.js +78 -28
  2. package/es/AdvancedFilterDialog/images/all-selection.png +0 -0
  3. package/es/AdvancedFilterDialog/images/branch-selection.png +0 -0
  4. package/es/AdvancedFilterDialog/images/children-selection.png +0 -0
  5. package/es/AdvancedFilterDialog/images/level-selection.png +0 -0
  6. package/es/AdvancedFilterDialog/images/single-selection.png +0 -0
  7. package/es/AdvancedFilterDialog/images/small-all-selection.png +0 -0
  8. package/es/AdvancedFilterDialog/images/small-branch-selection.png +0 -0
  9. package/es/AdvancedFilterDialog/images/small-children-selection.png +0 -0
  10. package/es/AdvancedFilterDialog/images/small-level-selection.png +0 -0
  11. package/es/AdvancedFilterDialog/images/small-single-selection.png +0 -0
  12. package/es/Chips/CustomChip.js +109 -0
  13. package/es/Chips/DeleteChip.js +27 -0
  14. package/es/Chips/GroupedChips.js +95 -0
  15. package/es/Chips/index.js +34 -26
  16. package/es/Chips/styles.js +64 -0
  17. package/es/Chips/utils.js +11 -0
  18. package/es/HierarchicalFilter/HierarchicalFilter.js +1 -1
  19. package/es/VirtualizedTree/Item.js +14 -14
  20. package/es/VirtualizedTree/VirtualizedTree.js +13 -14
  21. package/es/index.js +1 -1
  22. package/lib/AdvancedFilterDialog/AdvancedFilterDialog.js +105 -26
  23. package/lib/AdvancedFilterDialog/images/all-selection.png +0 -0
  24. package/lib/AdvancedFilterDialog/images/branch-selection.png +0 -0
  25. package/lib/AdvancedFilterDialog/images/children-selection.png +0 -0
  26. package/lib/AdvancedFilterDialog/images/level-selection.png +0 -0
  27. package/lib/AdvancedFilterDialog/images/single-selection.png +0 -0
  28. package/lib/AdvancedFilterDialog/images/small-all-selection.png +0 -0
  29. package/lib/AdvancedFilterDialog/images/small-branch-selection.png +0 -0
  30. package/lib/AdvancedFilterDialog/images/small-children-selection.png +0 -0
  31. package/lib/AdvancedFilterDialog/images/small-level-selection.png +0 -0
  32. package/lib/AdvancedFilterDialog/images/small-single-selection.png +0 -0
  33. package/lib/Chips/CustomChip.js +145 -0
  34. package/lib/Chips/DeleteChip.js +46 -0
  35. package/lib/Chips/GroupedChips.js +122 -0
  36. package/lib/Chips/index.js +11 -4
  37. package/lib/Chips/styles.js +74 -0
  38. package/lib/Chips/utils.js +20 -0
  39. package/lib/HierarchicalFilter/HierarchicalFilter.js +1 -1
  40. package/lib/VirtualizedTree/Item.js +18 -13
  41. package/lib/VirtualizedTree/VirtualizedTree.js +13 -14
  42. package/lib/index.js +8 -2
  43. package/package.json +7 -5
  44. package/es/Chips/Chips.js +0 -302
  45. package/lib/Chips/Chips.js +0 -342
package/es/Chips/Chips.js DELETED
@@ -1,302 +0,0 @@
1
- import React, { Fragment } from 'react';
2
- import PropTypes from 'prop-types';
3
- import * as R from 'ramda';
4
- import cx from 'classnames';
5
- import { makeStyles, useTheme } from '@material-ui/core/styles';
6
- import Grid from '@material-ui/core/Grid';
7
- import Divider from '@material-ui/core/Divider';
8
- import IconButton from '@material-ui/core/IconButton';
9
- import Chip from '@material-ui/core/Chip';
10
- import Cross from '../Icons/Cross';
11
- import { getIsRtl, withBlank } from '../utils';
12
- import Tooltip from '../Tooltip';
13
-
14
- var shownTooltip = R.pipe(R.dropLast(1), R.either(R.isEmpty, R.isNil), R.not);
15
- var showMultiLinedTooltip = R.pipe(R.head, R.propOr([], 'parents'), R.isEmpty, R.not);
16
- var myTooltipRenderer = function myTooltipRenderer(_ref) {
17
- var isRtl = _ref.isRtl,
18
- labelRenderer = _ref.labelRenderer;
19
- return R.pipe(R.map(labelRenderer), R.when(R.always(isRtl), R.reverse), R.join(isRtl ? ' < ' : ' > '));
20
- };
21
-
22
- export var useStyles = makeStyles(function (theme) {
23
- return {
24
- root: {
25
- display: 'flex',
26
- flexWrap: 'wrap'
27
- },
28
- chip: {
29
- height: 'unset',
30
- borderRadius: 3,
31
- minHeight: 25,
32
- fontSize: 12,
33
- margin: theme.spacing(0.25)
34
- },
35
- mainChip: {
36
- background: 'none',
37
- color: theme.palette.text.primary
38
- },
39
- secondaryChip: {
40
- backgroundColor: R.path(['palette', 'tertiary', 'light'])(theme) || theme.palette.grey[100],
41
- '&:hover, &:focus': {
42
- backgroundColor: R.path(['palette', 'tertiary', 'dark'])(theme) || theme.palette.grey[300]
43
- },
44
- color: theme.palette.primary.main
45
- },
46
- icon: {
47
- color: theme.palette.primary.main,
48
- cursor: 'pointer',
49
- margin: 0,
50
- '&:hover': {
51
- color: 'inherit'
52
- },
53
- '& svg': {
54
- fontSize: 15
55
- }
56
- },
57
- divider: {
58
- margin: theme.spacing(0.5),
59
- backgroundColor: theme.palette.grey[700]
60
- },
61
- dividerHz: {
62
- width: '100%',
63
- margin: theme.spacing(0.5),
64
- backgroundColor: theme.palette.grey[700]
65
- },
66
- spaceLabel: {
67
- paddingLeft: 0
68
- },
69
- formatLabel: {
70
- whiteSpace: 'pre-wrap',
71
- overflowWrap: 'anywhere'
72
- },
73
- tooltip: theme.typography.body2,
74
- childrenIndicator: {
75
- margin: '0 2px',
76
- fontSize: 10
77
- },
78
- tooltipIndicator: {
79
- borderBottom: '1px dotted ' + theme.palette.primary.main
80
- }
81
- };
82
- });
83
-
84
- var CustomChip = function CustomChip(_ref2) {
85
- var _cx;
86
-
87
- var id = _ref2.id,
88
- parentId = _ref2.parentId,
89
- _ref2$items = _ref2.items,
90
- items = _ref2$items === undefined ? [] : _ref2$items,
91
- label = _ref2.label,
92
- onDelete = _ref2.onDelete,
93
- renderer = _ref2.renderer,
94
- chipClasses = _ref2.chipClasses,
95
- iconClasses = _ref2.iconClasses,
96
- labelClasses = _ref2.labelClasses,
97
- _ref2$ariaLabel = _ref2.ariaLabel,
98
- ariaLabel = _ref2$ariaLabel === undefined ? 'delete' : _ref2$ariaLabel;
99
-
100
- var theme = useTheme();
101
- var isRtl = getIsRtl(theme);
102
- var labelRenderer = R.prop('label');
103
- var classes = useStyles();
104
- var mapIndexed = R.addIndex(R.map);
105
- var onChange = R.is(Function)(onDelete) ? function () {
106
- return onDelete(parentId, R.isNil(id) ? [] : [id]);
107
- } : null;
108
- var hasTooltip = shownTooltip(items);
109
- var hasMultiLinedTooltip = showMultiLinedTooltip(items);
110
- var multiLinedTooltipRenderer = function multiLinedTooltipRenderer(arr) {
111
- return mapIndexed(function (item, index) {
112
- return React.createElement(
113
- 'div',
114
- { key: index },
115
- myTooltipRenderer({ isRtl: isRtl, labelRenderer: labelRenderer })(item),
116
- React.createElement('br', null)
117
- );
118
- })(R.prop('parents')(R.head(arr)));
119
- };
120
-
121
- return React.createElement(
122
- Tooltip,
123
- {
124
- placement: 'top',
125
- title: hasTooltip ? renderer(items) : hasMultiLinedTooltip ? multiLinedTooltipRenderer(items) : ''
126
- },
127
- React.createElement(Chip, {
128
- size: 'small',
129
- 'aria-label': label,
130
- label: hasTooltip || hasMultiLinedTooltip ? React.createElement(
131
- Fragment,
132
- null,
133
- '...',
134
- React.createElement(
135
- 'span',
136
- { className: classes.childrenIndicator },
137
- '>'
138
- ),
139
- label
140
- ) : label,
141
- deleteIcon: React.createElement(
142
- IconButton,
143
- {
144
- disableRipple: true,
145
- className: iconClasses,
146
- 'aria-label': ariaLabel + ' ' + label,
147
- component: 'span',
148
- tabIndex: -1
149
- },
150
- React.createElement(Cross, null)
151
- ),
152
- clickable: true,
153
- onDelete: onChange,
154
- className: cx(chipClasses, (_cx = {}, _cx[classes.tooltipIndicator] = hasTooltip || hasMultiLinedTooltip, _cx)),
155
- classes: { label: labelClasses }
156
- })
157
- );
158
- };
159
-
160
- CustomChip.propTypes = process.env.NODE_ENV !== "production" ? {
161
- id: PropTypes.string,
162
- parentId: PropTypes.string,
163
- label: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
164
- onDelete: PropTypes.func,
165
- renderer: PropTypes.func,
166
- chipClasses: PropTypes.string,
167
- iconClasses: PropTypes.string,
168
- labelClasses: PropTypes.string,
169
- ariaLabel: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
170
- items: PropTypes.array
171
- } : {};
172
-
173
- var Chips = function Chips(_ref3) {
174
- var _ref3$items = _ref3.items,
175
- items = _ref3$items === undefined ? [] : _ref3$items,
176
- onDelete = _ref3.onDelete,
177
- onDeleteAll = _ref3.onDeleteAll,
178
- clearAllLabel = _ref3.clearAllLabel,
179
- _ref3$labelRenderer = _ref3.labelRenderer,
180
- labelRenderer = _ref3$labelRenderer === undefined ? R.prop('label') : _ref3$labelRenderer,
181
- tooltipRenderer = _ref3.tooltipRenderer,
182
- ariaLabel = _ref3.ariaLabel,
183
- _ref3$reducingNbChips = _ref3.reducingNbChips,
184
- reducingNbChips = _ref3$reducingNbChips === undefined ? 15 : _ref3$reducingNbChips,
185
- labels = _ref3.labels,
186
- _ref3$isVis = _ref3.isVis,
187
- isVis = _ref3$isVis === undefined ? false : _ref3$isVis;
188
-
189
- var classes = useStyles();
190
- var theme = useTheme();
191
- var isRtl = getIsRtl(theme);
192
-
193
- return React.createElement(
194
- Grid,
195
- { container: isVis, 'data-testid': 'chips-test-id' },
196
- R.map(function (itemProps) {
197
- var _cx2;
198
-
199
- var parentId = itemProps.id,
200
- isNotRemovable = itemProps.isNotRemovable,
201
- _itemProps$values = itemProps.values,
202
- values = _itemProps$values === undefined ? [] : _itemProps$values;
203
-
204
- return React.createElement(
205
- Grid,
206
- {
207
- item: isVis,
208
- container: !isVis,
209
- key: parentId,
210
- className: cx((_cx2 = {}, _cx2[classes.root] = isVis, _cx2))
211
- },
212
- React.createElement(
213
- Grid,
214
- { item: !isVis, style: !isVis ? { width: '100%' } : null },
215
- React.createElement(CustomChip, {
216
- parentId: parentId,
217
- label: labelRenderer(itemProps) + ':',
218
- ariaLabel: ariaLabel,
219
- chipClasses: cx(classes.mainChip, classes.chip),
220
- onDelete: isNotRemovable ? null : onDelete,
221
- iconClasses: classes.icon,
222
- labelClasses: cx(classes.spaceLabel, classes.formatLabel)
223
- }),
224
- R.pipe(R.length, R.flip(R.gt)(reducingNbChips))(values) ? React.createElement(CustomChip, {
225
- parentId: parentId,
226
- label: R.length(values) + ' ' + R.prop('reducingChip')(labels),
227
- chipClasses: cx(classes.secondaryChip, classes.chip),
228
- onDelete: isNotRemovable ? null : onDelete,
229
- iconClasses: classes.icon,
230
- labelClasses: cx(classes.formatLabel)
231
- }) : R.map(function (items) {
232
- var lastItem = R.last(items);
233
- var id = lastItem.id,
234
- isNotRemovable = lastItem.isNotRemovable;
235
-
236
-
237
- return React.createElement(CustomChip, {
238
- key: id,
239
- id: id,
240
- items: R.pipe(R.length, R.gte(2)) ? items : null,
241
- renderer: R.is(Function)(tooltipRenderer) ? tooltipRenderer : myTooltipRenderer({ isRtl: isRtl, labelRenderer: labelRenderer }),
242
- label: labelRenderer(lastItem),
243
- ariaLabel: ariaLabel,
244
- parentId: parentId,
245
- onDelete: isNotRemovable ? null : onDelete,
246
- chipClasses: cx(classes.secondaryChip, classes.chip),
247
- iconClasses: classes.icon,
248
- labelClasses: cx(classes.formatLabel)
249
- });
250
- })(values),
251
- !isVis && React.createElement(Divider, { className: classes.dividerHz })
252
- ),
253
- isVis && React.createElement(Divider, { className: classes.divider, orientation: 'vertical', flexItem: true })
254
- );
255
- })(items),
256
- R.is(Function)(onDeleteAll) && React.createElement(
257
- Grid,
258
- { container: true },
259
- React.createElement(
260
- Grid,
261
- { item: true, xs: 12 },
262
- React.createElement(CustomChip, {
263
- label: clearAllLabel,
264
- ariaLabel: ariaLabel,
265
- chipClasses: cx(classes.mainChip, classes.chip),
266
- onDelete: onDeleteAll,
267
- iconClasses: classes.icon,
268
- labelClasses: cx(classes.spaceLabel, classes.formatLabel)
269
- })
270
- )
271
- )
272
- );
273
- };
274
-
275
- Chips.propTypes = process.env.NODE_ENV !== "production" ? {
276
- items: PropTypes.arrayOf(PropTypes.shape({
277
- id: PropTypes.string,
278
- label: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
279
- isNotRemovable: PropTypes.bool,
280
- values: PropTypes.arrayOf(PropTypes.arrayOf(PropTypes.shape({
281
- id: PropTypes.string,
282
- label: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
283
- isNotRemovable: PropTypes.bool
284
- })))
285
- })),
286
- clearAllLabel: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
287
- onDelete: PropTypes.func,
288
- onDeleteAll: PropTypes.func,
289
- labelRenderer: PropTypes.func,
290
- tooltipRenderer: PropTypes.func,
291
- ariaLabel: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
292
- reducingNbChips: PropTypes.number,
293
- labels: PropTypes.shape({
294
- reducingChip: PropTypes.oneOfType([PropTypes.string, PropTypes.element])
295
- }),
296
- isVis: PropTypes.bool
297
- } : {};
298
-
299
- export default withBlank(function (_ref4) {
300
- var isBlank = _ref4.isBlank;
301
- return { isBlank: isBlank };
302
- })(Chips);
@@ -1,342 +0,0 @@
1
- 'use strict';
2
-
3
- exports.__esModule = true;
4
- exports.useStyles = undefined;
5
-
6
- var _react = require('react');
7
-
8
- var _react2 = _interopRequireDefault(_react);
9
-
10
- var _propTypes = require('prop-types');
11
-
12
- var _propTypes2 = _interopRequireDefault(_propTypes);
13
-
14
- var _ramda = require('ramda');
15
-
16
- var R = _interopRequireWildcard(_ramda);
17
-
18
- var _classnames = require('classnames');
19
-
20
- var _classnames2 = _interopRequireDefault(_classnames);
21
-
22
- var _styles = require('@material-ui/core/styles');
23
-
24
- var _Grid = require('@material-ui/core/Grid');
25
-
26
- var _Grid2 = _interopRequireDefault(_Grid);
27
-
28
- var _Divider = require('@material-ui/core/Divider');
29
-
30
- var _Divider2 = _interopRequireDefault(_Divider);
31
-
32
- var _IconButton = require('@material-ui/core/IconButton');
33
-
34
- var _IconButton2 = _interopRequireDefault(_IconButton);
35
-
36
- var _Chip = require('@material-ui/core/Chip');
37
-
38
- var _Chip2 = _interopRequireDefault(_Chip);
39
-
40
- var _Cross = require('../Icons/Cross');
41
-
42
- var _Cross2 = _interopRequireDefault(_Cross);
43
-
44
- var _utils = require('../utils');
45
-
46
- var _Tooltip = require('../Tooltip');
47
-
48
- var _Tooltip2 = _interopRequireDefault(_Tooltip);
49
-
50
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
51
-
52
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
53
-
54
- var shownTooltip = R.pipe(R.dropLast(1), R.either(R.isEmpty, R.isNil), R.not);
55
- var showMultiLinedTooltip = R.pipe(R.head, R.propOr([], 'parents'), R.isEmpty, R.not);
56
- var myTooltipRenderer = function myTooltipRenderer(_ref) {
57
- var isRtl = _ref.isRtl,
58
- labelRenderer = _ref.labelRenderer;
59
- return R.pipe(R.map(labelRenderer), R.when(R.always(isRtl), R.reverse), R.join(isRtl ? ' < ' : ' > '));
60
- };
61
-
62
- var useStyles = exports.useStyles = (0, _styles.makeStyles)(function (theme) {
63
- return {
64
- root: {
65
- display: 'flex',
66
- flexWrap: 'wrap'
67
- },
68
- chip: {
69
- height: 'unset',
70
- borderRadius: 3,
71
- minHeight: 25,
72
- fontSize: 12,
73
- margin: theme.spacing(0.25)
74
- },
75
- mainChip: {
76
- background: 'none',
77
- color: theme.palette.text.primary
78
- },
79
- secondaryChip: {
80
- backgroundColor: R.path(['palette', 'tertiary', 'light'])(theme) || theme.palette.grey[100],
81
- '&:hover, &:focus': {
82
- backgroundColor: R.path(['palette', 'tertiary', 'dark'])(theme) || theme.palette.grey[300]
83
- },
84
- color: theme.palette.primary.main
85
- },
86
- icon: {
87
- color: theme.palette.primary.main,
88
- cursor: 'pointer',
89
- margin: 0,
90
- '&:hover': {
91
- color: 'inherit'
92
- },
93
- '& svg': {
94
- fontSize: 15
95
- }
96
- },
97
- divider: {
98
- margin: theme.spacing(0.5),
99
- backgroundColor: theme.palette.grey[700]
100
- },
101
- dividerHz: {
102
- width: '100%',
103
- margin: theme.spacing(0.5),
104
- backgroundColor: theme.palette.grey[700]
105
- },
106
- spaceLabel: {
107
- paddingLeft: 0
108
- },
109
- formatLabel: {
110
- whiteSpace: 'pre-wrap',
111
- overflowWrap: 'anywhere'
112
- },
113
- tooltip: theme.typography.body2,
114
- childrenIndicator: {
115
- margin: '0 2px',
116
- fontSize: 10
117
- },
118
- tooltipIndicator: {
119
- borderBottom: '1px dotted ' + theme.palette.primary.main
120
- }
121
- };
122
- });
123
-
124
- var CustomChip = function CustomChip(_ref2) {
125
- var _cx;
126
-
127
- var id = _ref2.id,
128
- parentId = _ref2.parentId,
129
- _ref2$items = _ref2.items,
130
- items = _ref2$items === undefined ? [] : _ref2$items,
131
- label = _ref2.label,
132
- onDelete = _ref2.onDelete,
133
- renderer = _ref2.renderer,
134
- chipClasses = _ref2.chipClasses,
135
- iconClasses = _ref2.iconClasses,
136
- labelClasses = _ref2.labelClasses,
137
- _ref2$ariaLabel = _ref2.ariaLabel,
138
- ariaLabel = _ref2$ariaLabel === undefined ? 'delete' : _ref2$ariaLabel;
139
-
140
- var theme = (0, _styles.useTheme)();
141
- var isRtl = (0, _utils.getIsRtl)(theme);
142
- var labelRenderer = R.prop('label');
143
- var classes = useStyles();
144
- var mapIndexed = R.addIndex(R.map);
145
- var onChange = R.is(Function)(onDelete) ? function () {
146
- return onDelete(parentId, R.isNil(id) ? [] : [id]);
147
- } : null;
148
- var hasTooltip = shownTooltip(items);
149
- var hasMultiLinedTooltip = showMultiLinedTooltip(items);
150
- var multiLinedTooltipRenderer = function multiLinedTooltipRenderer(arr) {
151
- return mapIndexed(function (item, index) {
152
- return _react2.default.createElement(
153
- 'div',
154
- { key: index },
155
- myTooltipRenderer({ isRtl: isRtl, labelRenderer: labelRenderer })(item),
156
- _react2.default.createElement('br', null)
157
- );
158
- })(R.prop('parents')(R.head(arr)));
159
- };
160
-
161
- return _react2.default.createElement(
162
- _Tooltip2.default,
163
- {
164
- placement: 'top',
165
- title: hasTooltip ? renderer(items) : hasMultiLinedTooltip ? multiLinedTooltipRenderer(items) : ''
166
- },
167
- _react2.default.createElement(_Chip2.default, {
168
- size: 'small',
169
- 'aria-label': label,
170
- label: hasTooltip || hasMultiLinedTooltip ? _react2.default.createElement(
171
- _react.Fragment,
172
- null,
173
- '...',
174
- _react2.default.createElement(
175
- 'span',
176
- { className: classes.childrenIndicator },
177
- '>'
178
- ),
179
- label
180
- ) : label,
181
- deleteIcon: _react2.default.createElement(
182
- _IconButton2.default,
183
- {
184
- disableRipple: true,
185
- className: iconClasses,
186
- 'aria-label': ariaLabel + ' ' + label,
187
- component: 'span',
188
- tabIndex: -1
189
- },
190
- _react2.default.createElement(_Cross2.default, null)
191
- ),
192
- clickable: true,
193
- onDelete: onChange,
194
- className: (0, _classnames2.default)(chipClasses, (_cx = {}, _cx[classes.tooltipIndicator] = hasTooltip || hasMultiLinedTooltip, _cx)),
195
- classes: { label: labelClasses }
196
- })
197
- );
198
- };
199
-
200
- CustomChip.propTypes = process.env.NODE_ENV !== "production" ? {
201
- id: _propTypes2.default.string,
202
- parentId: _propTypes2.default.string,
203
- label: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
204
- onDelete: _propTypes2.default.func,
205
- renderer: _propTypes2.default.func,
206
- chipClasses: _propTypes2.default.string,
207
- iconClasses: _propTypes2.default.string,
208
- labelClasses: _propTypes2.default.string,
209
- ariaLabel: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
210
- items: _propTypes2.default.array
211
- } : {};
212
-
213
- var Chips = function Chips(_ref3) {
214
- var _ref3$items = _ref3.items,
215
- items = _ref3$items === undefined ? [] : _ref3$items,
216
- onDelete = _ref3.onDelete,
217
- onDeleteAll = _ref3.onDeleteAll,
218
- clearAllLabel = _ref3.clearAllLabel,
219
- _ref3$labelRenderer = _ref3.labelRenderer,
220
- labelRenderer = _ref3$labelRenderer === undefined ? R.prop('label') : _ref3$labelRenderer,
221
- tooltipRenderer = _ref3.tooltipRenderer,
222
- ariaLabel = _ref3.ariaLabel,
223
- _ref3$reducingNbChips = _ref3.reducingNbChips,
224
- reducingNbChips = _ref3$reducingNbChips === undefined ? 15 : _ref3$reducingNbChips,
225
- labels = _ref3.labels,
226
- _ref3$isVis = _ref3.isVis,
227
- isVis = _ref3$isVis === undefined ? false : _ref3$isVis;
228
-
229
- var classes = useStyles();
230
- var theme = (0, _styles.useTheme)();
231
- var isRtl = (0, _utils.getIsRtl)(theme);
232
-
233
- return _react2.default.createElement(
234
- _Grid2.default,
235
- { container: isVis, 'data-testid': 'chips-test-id' },
236
- R.map(function (itemProps) {
237
- var _cx2;
238
-
239
- var parentId = itemProps.id,
240
- isNotRemovable = itemProps.isNotRemovable,
241
- _itemProps$values = itemProps.values,
242
- values = _itemProps$values === undefined ? [] : _itemProps$values;
243
-
244
- return _react2.default.createElement(
245
- _Grid2.default,
246
- {
247
- item: isVis,
248
- container: !isVis,
249
- key: parentId,
250
- className: (0, _classnames2.default)((_cx2 = {}, _cx2[classes.root] = isVis, _cx2))
251
- },
252
- _react2.default.createElement(
253
- _Grid2.default,
254
- { item: !isVis, style: !isVis ? { width: '100%' } : null },
255
- _react2.default.createElement(CustomChip, {
256
- parentId: parentId,
257
- label: labelRenderer(itemProps) + ':',
258
- ariaLabel: ariaLabel,
259
- chipClasses: (0, _classnames2.default)(classes.mainChip, classes.chip),
260
- onDelete: isNotRemovable ? null : onDelete,
261
- iconClasses: classes.icon,
262
- labelClasses: (0, _classnames2.default)(classes.spaceLabel, classes.formatLabel)
263
- }),
264
- R.pipe(R.length, R.flip(R.gt)(reducingNbChips))(values) ? _react2.default.createElement(CustomChip, {
265
- parentId: parentId,
266
- label: R.length(values) + ' ' + R.prop('reducingChip')(labels),
267
- chipClasses: (0, _classnames2.default)(classes.secondaryChip, classes.chip),
268
- onDelete: isNotRemovable ? null : onDelete,
269
- iconClasses: classes.icon,
270
- labelClasses: (0, _classnames2.default)(classes.formatLabel)
271
- }) : R.map(function (items) {
272
- var lastItem = R.last(items);
273
- var id = lastItem.id,
274
- isNotRemovable = lastItem.isNotRemovable;
275
-
276
-
277
- return _react2.default.createElement(CustomChip, {
278
- key: id,
279
- id: id,
280
- items: R.pipe(R.length, R.gte(2)) ? items : null,
281
- renderer: R.is(Function)(tooltipRenderer) ? tooltipRenderer : myTooltipRenderer({ isRtl: isRtl, labelRenderer: labelRenderer }),
282
- label: labelRenderer(lastItem),
283
- ariaLabel: ariaLabel,
284
- parentId: parentId,
285
- onDelete: isNotRemovable ? null : onDelete,
286
- chipClasses: (0, _classnames2.default)(classes.secondaryChip, classes.chip),
287
- iconClasses: classes.icon,
288
- labelClasses: (0, _classnames2.default)(classes.formatLabel)
289
- });
290
- })(values),
291
- !isVis && _react2.default.createElement(_Divider2.default, { className: classes.dividerHz })
292
- ),
293
- isVis && _react2.default.createElement(_Divider2.default, { className: classes.divider, orientation: 'vertical', flexItem: true })
294
- );
295
- })(items),
296
- R.is(Function)(onDeleteAll) && _react2.default.createElement(
297
- _Grid2.default,
298
- { container: true },
299
- _react2.default.createElement(
300
- _Grid2.default,
301
- { item: true, xs: 12 },
302
- _react2.default.createElement(CustomChip, {
303
- label: clearAllLabel,
304
- ariaLabel: ariaLabel,
305
- chipClasses: (0, _classnames2.default)(classes.mainChip, classes.chip),
306
- onDelete: onDeleteAll,
307
- iconClasses: classes.icon,
308
- labelClasses: (0, _classnames2.default)(classes.spaceLabel, classes.formatLabel)
309
- })
310
- )
311
- )
312
- );
313
- };
314
-
315
- Chips.propTypes = process.env.NODE_ENV !== "production" ? {
316
- items: _propTypes2.default.arrayOf(_propTypes2.default.shape({
317
- id: _propTypes2.default.string,
318
- label: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
319
- isNotRemovable: _propTypes2.default.bool,
320
- values: _propTypes2.default.arrayOf(_propTypes2.default.arrayOf(_propTypes2.default.shape({
321
- id: _propTypes2.default.string,
322
- label: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
323
- isNotRemovable: _propTypes2.default.bool
324
- })))
325
- })),
326
- clearAllLabel: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
327
- onDelete: _propTypes2.default.func,
328
- onDeleteAll: _propTypes2.default.func,
329
- labelRenderer: _propTypes2.default.func,
330
- tooltipRenderer: _propTypes2.default.func,
331
- ariaLabel: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
332
- reducingNbChips: _propTypes2.default.number,
333
- labels: _propTypes2.default.shape({
334
- reducingChip: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element])
335
- }),
336
- isVis: _propTypes2.default.bool
337
- } : {};
338
-
339
- exports.default = (0, _utils.withBlank)(function (_ref4) {
340
- var isBlank = _ref4.isBlank;
341
- return { isBlank: isBlank };
342
- })(Chips);