@sis-cc/dotstatsuite-visions 12.27.0 → 12.28.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/es/DataHeader/DataHeader.js +42 -16
- package/es/DataHeader/Flags.js +4 -2
- package/es/DataHeader/TooltipHeader.js +5 -3
- package/es/DynamicDrawer/DynamicDrawer.js +21 -11
- package/lib/DataHeader/DataHeader.js +42 -16
- package/lib/DataHeader/Flags.js +4 -2
- package/lib/DataHeader/TooltipHeader.js +5 -3
- package/lib/DynamicDrawer/DynamicDrawer.js +20 -10
- package/package.json +1 -1
- package/umd/@sis-cc/dotstatsuite-visions.js +324 -147
- package/umd/@sis-cc/dotstatsuite-visions.min.js +11 -11
- package/umd/@sis-cc/dotstatsuite-visions.min.js.map +1 -1
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
var _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; };
|
|
2
2
|
|
|
3
|
+
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
|
|
4
|
+
|
|
3
5
|
import React from 'react';
|
|
4
6
|
import PropTypes from 'prop-types';
|
|
5
7
|
import * as R from 'ramda';
|
|
@@ -89,20 +91,31 @@ var useStyles = makeStyles(function (theme) {
|
|
|
89
91
|
}
|
|
90
92
|
};
|
|
91
93
|
});
|
|
94
|
+
var BasicHTMLRenderer = function BasicHTMLRenderer(_ref) {
|
|
95
|
+
var html = _ref.html,
|
|
96
|
+
rest = _objectWithoutProperties(_ref, ['html']);
|
|
97
|
+
|
|
98
|
+
return React.createElement('span', _extends({ dangerouslySetInnerHTML: { __html: html } }, rest));
|
|
99
|
+
};
|
|
92
100
|
|
|
93
|
-
|
|
101
|
+
BasicHTMLRenderer.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
102
|
+
html: PropTypes.string
|
|
103
|
+
} : {};
|
|
104
|
+
var DataHeader = function DataHeader(_ref2) {
|
|
94
105
|
var _cx;
|
|
95
106
|
|
|
96
|
-
var children =
|
|
97
|
-
title =
|
|
98
|
-
|
|
99
|
-
subtitle =
|
|
100
|
-
combinations =
|
|
101
|
-
disclaimer =
|
|
102
|
-
sideProps =
|
|
103
|
-
SideIcon =
|
|
104
|
-
|
|
105
|
-
isSticky =
|
|
107
|
+
var children = _ref2.children,
|
|
108
|
+
title = _ref2.title,
|
|
109
|
+
_ref2$subtitle = _ref2.subtitle,
|
|
110
|
+
subtitle = _ref2$subtitle === undefined ? [] : _ref2$subtitle,
|
|
111
|
+
combinations = _ref2.combinations,
|
|
112
|
+
disclaimer = _ref2.disclaimer,
|
|
113
|
+
sideProps = _ref2.sideProps,
|
|
114
|
+
SideIcon = _ref2.SideIcon,
|
|
115
|
+
_ref2$isSticky = _ref2.isSticky,
|
|
116
|
+
isSticky = _ref2$isSticky === undefined ? false : _ref2$isSticky,
|
|
117
|
+
_ref2$HTMLRenderer = _ref2.HTMLRenderer,
|
|
118
|
+
HTMLRenderer = _ref2$HTMLRenderer === undefined ? BasicHTMLRenderer : _ref2$HTMLRenderer;
|
|
106
119
|
|
|
107
120
|
var target = React.useRef(null);
|
|
108
121
|
|
|
@@ -157,7 +170,11 @@ var DataHeader = function DataHeader(_ref) {
|
|
|
157
170
|
{ className: classes.sideIconContainer },
|
|
158
171
|
React.createElement(SideIcon, { sideProps: sideProps })
|
|
159
172
|
),
|
|
160
|
-
React.createElement(Flags, {
|
|
173
|
+
React.createElement(Flags, {
|
|
174
|
+
classes: classes,
|
|
175
|
+
HTMLRenderer: HTMLRenderer,
|
|
176
|
+
content: R.propOr([], 'flags', title)
|
|
177
|
+
})
|
|
161
178
|
),
|
|
162
179
|
isWidthUp(T4_BREAKPOINTS.xs3) && subtitle && R.not(R.isEmpty(subtitle)) && React.createElement(
|
|
163
180
|
'div',
|
|
@@ -178,7 +195,11 @@ var DataHeader = function DataHeader(_ref) {
|
|
|
178
195
|
{ variant: 'inherit' },
|
|
179
196
|
sub.label
|
|
180
197
|
),
|
|
181
|
-
R.not(R.isEmpty(R.propOr([], 'flags', sub))) && React.createElement(Flags, {
|
|
198
|
+
R.not(R.isEmpty(R.propOr([], 'flags', sub))) && React.createElement(Flags, {
|
|
199
|
+
classes: classes,
|
|
200
|
+
HTMLRenderer: HTMLRenderer,
|
|
201
|
+
content: R.prop('flags', sub)
|
|
202
|
+
}),
|
|
182
203
|
R.lt(index + 1, subtitleLength) && React.createElement(
|
|
183
204
|
'svg',
|
|
184
205
|
{ width: '24', height: '8' },
|
|
@@ -205,7 +226,11 @@ var DataHeader = function DataHeader(_ref) {
|
|
|
205
226
|
{ variant: 'inherit' },
|
|
206
227
|
comb.label
|
|
207
228
|
),
|
|
208
|
-
R.not(R.isEmpty(R.propOr([], 'flags', comb))) && React.createElement(Flags, {
|
|
229
|
+
R.not(R.isEmpty(R.propOr([], 'flags', comb))) && React.createElement(Flags, {
|
|
230
|
+
classes: classes,
|
|
231
|
+
HTMLRenderer: HTMLRenderer,
|
|
232
|
+
content: R.prop('flags', comb)
|
|
233
|
+
}),
|
|
209
234
|
R.lt(index + 1, combinationsLength) && React.createElement(
|
|
210
235
|
'svg',
|
|
211
236
|
{ width: '24', height: '8' },
|
|
@@ -229,7 +254,7 @@ var DataHeader = function DataHeader(_ref) {
|
|
|
229
254
|
{ className: classes.children },
|
|
230
255
|
R.not(R.isEmpty(reducedContent)) && React.createElement(
|
|
231
256
|
TooltipHeader,
|
|
232
|
-
{ classes: classes, content: reducedContent },
|
|
257
|
+
{ classes: classes, content: reducedContent, HTMLRenderer: HTMLRenderer },
|
|
233
258
|
React.createElement(Info, { className: classes.infoIcon })
|
|
234
259
|
),
|
|
235
260
|
children
|
|
@@ -267,7 +292,8 @@ DataHeader.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
267
292
|
SideIcon: PropTypes.func,
|
|
268
293
|
disclaimer: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
|
|
269
294
|
children: PropTypes.node,
|
|
270
|
-
isSticky: PropTypes.bool
|
|
295
|
+
isSticky: PropTypes.bool,
|
|
296
|
+
HTMLRenderer: PropTypes.func
|
|
271
297
|
} : {};
|
|
272
298
|
|
|
273
299
|
export default DataHeader;
|
package/es/DataHeader/Flags.js
CHANGED
|
@@ -6,7 +6,8 @@ import { TooltipHeader } from './TooltipHeader';
|
|
|
6
6
|
|
|
7
7
|
var Flags = function Flags(_ref) {
|
|
8
8
|
var classes = _ref.classes,
|
|
9
|
-
content = _ref.content
|
|
9
|
+
content = _ref.content,
|
|
10
|
+
HTMLRenderer = _ref.HTMLRenderer;
|
|
10
11
|
|
|
11
12
|
var codes = R.pipe(R.pluck('code'), R.filter(R.identity))(content);
|
|
12
13
|
var hasCodes = !R.isEmpty(codes);
|
|
@@ -16,7 +17,7 @@ var Flags = function Flags(_ref) {
|
|
|
16
17
|
})(codes);
|
|
17
18
|
return React.createElement(
|
|
18
19
|
TooltipHeader,
|
|
19
|
-
{ classes: classes, content: content },
|
|
20
|
+
{ classes: classes, content: content, HTMLRenderer: HTMLRenderer },
|
|
20
21
|
React.createElement(
|
|
21
22
|
'sup',
|
|
22
23
|
{ className: classes.svgWrapper },
|
|
@@ -28,6 +29,7 @@ var Flags = function Flags(_ref) {
|
|
|
28
29
|
|
|
29
30
|
Flags.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
30
31
|
classes: PropTypes.object,
|
|
32
|
+
HTMLRenderer: PropTypes.func,
|
|
31
33
|
content: PropTypes.arrayOf(PropTypes.shape({
|
|
32
34
|
header: PropTypes.string,
|
|
33
35
|
label: PropTypes.string,
|
|
@@ -7,6 +7,7 @@ import Title from './Title';
|
|
|
7
7
|
export var TooltipHeader = function TooltipHeader(_ref) {
|
|
8
8
|
var children = _ref.children,
|
|
9
9
|
classes = _ref.classes,
|
|
10
|
+
HTMLRenderer = _ref.HTMLRenderer,
|
|
10
11
|
_ref$content = _ref.content,
|
|
11
12
|
content = _ref$content === undefined ? [] : _ref$content;
|
|
12
13
|
|
|
@@ -24,7 +25,7 @@ export var TooltipHeader = function TooltipHeader(_ref) {
|
|
|
24
25
|
'li',
|
|
25
26
|
{ key: label + '-' + index },
|
|
26
27
|
React.createElement(Title, { header: header }),
|
|
27
|
-
label,
|
|
28
|
+
R.is(Function, HTMLRenderer) ? React.createElement(HTMLRenderer, { html: label }) : label,
|
|
28
29
|
R.not(R.isEmpty(sub)) && React.createElement(
|
|
29
30
|
'ul',
|
|
30
31
|
{ className: classes.subContent },
|
|
@@ -33,7 +34,7 @@ export var TooltipHeader = function TooltipHeader(_ref) {
|
|
|
33
34
|
return React.createElement(
|
|
34
35
|
'li',
|
|
35
36
|
{ key: label + '-' + index },
|
|
36
|
-
label
|
|
37
|
+
R.is(Function, HTMLRenderer) ? React.createElement(HTMLRenderer, { html: label }) : label
|
|
37
38
|
);
|
|
38
39
|
}, sub)
|
|
39
40
|
)
|
|
@@ -70,7 +71,8 @@ TooltipHeader.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
70
71
|
sub: PropTypes.arrayOf(PropTypes.shape({
|
|
71
72
|
label: PropTypes.string
|
|
72
73
|
}))
|
|
73
|
-
}))
|
|
74
|
+
})),
|
|
75
|
+
HTMLRenderer: PropTypes.func
|
|
74
76
|
} : {};
|
|
75
77
|
|
|
76
78
|
export default TooltipHeader;
|
|
@@ -2,7 +2,7 @@ var _extends = Object.assign || function (target) { for (var i = 1; i < argument
|
|
|
2
2
|
|
|
3
3
|
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
|
|
4
4
|
|
|
5
|
-
import React, { useState, useEffect } from 'react';
|
|
5
|
+
import React, { useState, useEffect, useMemo } from 'react';
|
|
6
6
|
import PropTypes from 'prop-types';
|
|
7
7
|
import * as R from 'ramda';
|
|
8
8
|
import cx from 'classnames';
|
|
@@ -187,9 +187,9 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
187
187
|
open = _useState[0],
|
|
188
188
|
setOpen = _useState[1];
|
|
189
189
|
|
|
190
|
-
var _useState2 = useState(
|
|
191
|
-
|
|
192
|
-
|
|
190
|
+
var _useState2 = useState(null),
|
|
191
|
+
selectedId = _useState2[0],
|
|
192
|
+
setSelectedId = _useState2[1];
|
|
193
193
|
|
|
194
194
|
var _useState3 = useState({}),
|
|
195
195
|
selection = _useState3[0],
|
|
@@ -242,9 +242,12 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
242
242
|
rest = _objectWithoutProperties(props, ['list', 'labelRenderer', 'onClick', 'handleChangePanel', 'onClosePanel', 'isNarrow', 'labels', 'disableAccessor', 'isApplyHiddenNarrow', 'expandAll', 'collapseAll', 'expandedIds', 'allItems', 'periodPanel', 'classes', 'testId', 'tagAccessor', 'tagAriaLabel', 'children', 'styles']);
|
|
243
243
|
|
|
244
244
|
var handleChange = function handleChange(e, item) {
|
|
245
|
-
|
|
245
|
+
var filterSelection = R.pipe(R.propOr([], item.id), function (arr) {
|
|
246
|
+
return R.zipObj(arr, arr);
|
|
247
|
+
})(allSelection);
|
|
248
|
+
setSelection(_extends({}, filterSelection));
|
|
246
249
|
handleChangePanel(item.id, selection, allSelection);
|
|
247
|
-
|
|
250
|
+
setSelectedId(item.id);
|
|
248
251
|
setOpen(true);
|
|
249
252
|
};
|
|
250
253
|
var handleSubmit = function handleSubmit() {
|
|
@@ -252,17 +255,24 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
252
255
|
setAllSelection({});
|
|
253
256
|
setSelection({});
|
|
254
257
|
setOpen(false);
|
|
255
|
-
|
|
258
|
+
setSelectedId(null);
|
|
256
259
|
onClosePanel();
|
|
257
260
|
};
|
|
258
261
|
var handleClose = function handleClose() {
|
|
259
262
|
setOpen(false);
|
|
260
263
|
setAllSelection({});
|
|
261
264
|
setSelection({});
|
|
262
|
-
|
|
265
|
+
setSelectedId(null);
|
|
263
266
|
onClosePanel();
|
|
264
267
|
};
|
|
265
268
|
|
|
269
|
+
var filter = useMemo(function () {
|
|
270
|
+
if (!selectedId) return {};
|
|
271
|
+
return R.find(function (item) {
|
|
272
|
+
return item.id === selectedId;
|
|
273
|
+
})(list);
|
|
274
|
+
}, [selectedId, list]);
|
|
275
|
+
|
|
266
276
|
var isHidden = open && isNarrow;
|
|
267
277
|
var isNotHiddenButton = (!R.isEmpty(allSelection) || !isApplyHiddenNarrow) && isNarrow;
|
|
268
278
|
useEffect(function () {
|
|
@@ -327,7 +337,7 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
327
337
|
component: function component(props) {
|
|
328
338
|
return PaperComponent(_extends({
|
|
329
339
|
label: labelRenderer(item),
|
|
330
|
-
selected:
|
|
340
|
+
selected: selectedId === item.id,
|
|
331
341
|
tag: R.isNil(item.tag) ? React.createElement(
|
|
332
342
|
Chip,
|
|
333
343
|
{ items: item.values, tagValueLabel: tagValueLabel },
|
|
@@ -387,8 +397,8 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
387
397
|
styles: styles
|
|
388
398
|
},
|
|
389
399
|
R.equals(filter.id, periodPanel) ? children : React.createElement(AdvancedSelection, _extends({
|
|
390
|
-
id:
|
|
391
|
-
items: filter.values,
|
|
400
|
+
id: selectedId,
|
|
401
|
+
items: filter.values || [],
|
|
392
402
|
isOpen: open,
|
|
393
403
|
labelRenderer: labelRenderer,
|
|
394
404
|
disableAccessor: disableAccessor ? R.pipe(R.prop('isEnabled'), R.not) : undefined,
|
|
@@ -58,6 +58,8 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
|
|
|
58
58
|
|
|
59
59
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
60
60
|
|
|
61
|
+
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
|
|
62
|
+
|
|
61
63
|
var useStyles = (0, _makeStyles2.default)(function (theme) {
|
|
62
64
|
return {
|
|
63
65
|
header: {
|
|
@@ -132,20 +134,31 @@ var useStyles = (0, _makeStyles2.default)(function (theme) {
|
|
|
132
134
|
}
|
|
133
135
|
};
|
|
134
136
|
});
|
|
137
|
+
var BasicHTMLRenderer = function BasicHTMLRenderer(_ref) {
|
|
138
|
+
var html = _ref.html,
|
|
139
|
+
rest = _objectWithoutProperties(_ref, ['html']);
|
|
140
|
+
|
|
141
|
+
return _react2.default.createElement('span', _extends({ dangerouslySetInnerHTML: { __html: html } }, rest));
|
|
142
|
+
};
|
|
135
143
|
|
|
136
|
-
|
|
144
|
+
BasicHTMLRenderer.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
145
|
+
html: _propTypes2.default.string
|
|
146
|
+
} : {};
|
|
147
|
+
var DataHeader = function DataHeader(_ref2) {
|
|
137
148
|
var _cx;
|
|
138
149
|
|
|
139
|
-
var children =
|
|
140
|
-
title =
|
|
141
|
-
|
|
142
|
-
subtitle =
|
|
143
|
-
combinations =
|
|
144
|
-
disclaimer =
|
|
145
|
-
sideProps =
|
|
146
|
-
SideIcon =
|
|
147
|
-
|
|
148
|
-
isSticky =
|
|
150
|
+
var children = _ref2.children,
|
|
151
|
+
title = _ref2.title,
|
|
152
|
+
_ref2$subtitle = _ref2.subtitle,
|
|
153
|
+
subtitle = _ref2$subtitle === undefined ? [] : _ref2$subtitle,
|
|
154
|
+
combinations = _ref2.combinations,
|
|
155
|
+
disclaimer = _ref2.disclaimer,
|
|
156
|
+
sideProps = _ref2.sideProps,
|
|
157
|
+
SideIcon = _ref2.SideIcon,
|
|
158
|
+
_ref2$isSticky = _ref2.isSticky,
|
|
159
|
+
isSticky = _ref2$isSticky === undefined ? false : _ref2$isSticky,
|
|
160
|
+
_ref2$HTMLRenderer = _ref2.HTMLRenderer,
|
|
161
|
+
HTMLRenderer = _ref2$HTMLRenderer === undefined ? BasicHTMLRenderer : _ref2$HTMLRenderer;
|
|
149
162
|
|
|
150
163
|
var target = _react2.default.useRef(null);
|
|
151
164
|
|
|
@@ -200,7 +213,11 @@ var DataHeader = function DataHeader(_ref) {
|
|
|
200
213
|
{ className: classes.sideIconContainer },
|
|
201
214
|
_react2.default.createElement(SideIcon, { sideProps: sideProps })
|
|
202
215
|
),
|
|
203
|
-
_react2.default.createElement(_Flags2.default, {
|
|
216
|
+
_react2.default.createElement(_Flags2.default, {
|
|
217
|
+
classes: classes,
|
|
218
|
+
HTMLRenderer: HTMLRenderer,
|
|
219
|
+
content: R.propOr([], 'flags', title)
|
|
220
|
+
})
|
|
204
221
|
),
|
|
205
222
|
isWidthUp(_theme.T4_BREAKPOINTS.xs3) && subtitle && R.not(R.isEmpty(subtitle)) && _react2.default.createElement(
|
|
206
223
|
'div',
|
|
@@ -221,7 +238,11 @@ var DataHeader = function DataHeader(_ref) {
|
|
|
221
238
|
{ variant: 'inherit' },
|
|
222
239
|
sub.label
|
|
223
240
|
),
|
|
224
|
-
R.not(R.isEmpty(R.propOr([], 'flags', sub))) && _react2.default.createElement(_Flags2.default, {
|
|
241
|
+
R.not(R.isEmpty(R.propOr([], 'flags', sub))) && _react2.default.createElement(_Flags2.default, {
|
|
242
|
+
classes: classes,
|
|
243
|
+
HTMLRenderer: HTMLRenderer,
|
|
244
|
+
content: R.prop('flags', sub)
|
|
245
|
+
}),
|
|
225
246
|
R.lt(index + 1, subtitleLength) && _react2.default.createElement(
|
|
226
247
|
'svg',
|
|
227
248
|
{ width: '24', height: '8' },
|
|
@@ -248,7 +269,11 @@ var DataHeader = function DataHeader(_ref) {
|
|
|
248
269
|
{ variant: 'inherit' },
|
|
249
270
|
comb.label
|
|
250
271
|
),
|
|
251
|
-
R.not(R.isEmpty(R.propOr([], 'flags', comb))) && _react2.default.createElement(_Flags2.default, {
|
|
272
|
+
R.not(R.isEmpty(R.propOr([], 'flags', comb))) && _react2.default.createElement(_Flags2.default, {
|
|
273
|
+
classes: classes,
|
|
274
|
+
HTMLRenderer: HTMLRenderer,
|
|
275
|
+
content: R.prop('flags', comb)
|
|
276
|
+
}),
|
|
252
277
|
R.lt(index + 1, combinationsLength) && _react2.default.createElement(
|
|
253
278
|
'svg',
|
|
254
279
|
{ width: '24', height: '8' },
|
|
@@ -272,7 +297,7 @@ var DataHeader = function DataHeader(_ref) {
|
|
|
272
297
|
{ className: classes.children },
|
|
273
298
|
R.not(R.isEmpty(reducedContent)) && _react2.default.createElement(
|
|
274
299
|
_TooltipHeader2.default,
|
|
275
|
-
{ classes: classes, content: reducedContent },
|
|
300
|
+
{ classes: classes, content: reducedContent, HTMLRenderer: HTMLRenderer },
|
|
276
301
|
_react2.default.createElement(_Info2.default, { className: classes.infoIcon })
|
|
277
302
|
),
|
|
278
303
|
children
|
|
@@ -310,7 +335,8 @@ DataHeader.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
310
335
|
SideIcon: _propTypes2.default.func,
|
|
311
336
|
disclaimer: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
|
|
312
337
|
children: _propTypes2.default.node,
|
|
313
|
-
isSticky: _propTypes2.default.bool
|
|
338
|
+
isSticky: _propTypes2.default.bool,
|
|
339
|
+
HTMLRenderer: _propTypes2.default.func
|
|
314
340
|
} : {};
|
|
315
341
|
|
|
316
342
|
exports.default = DataHeader;
|
package/lib/DataHeader/Flags.js
CHANGED
|
@@ -24,7 +24,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
24
24
|
|
|
25
25
|
var Flags = function Flags(_ref) {
|
|
26
26
|
var classes = _ref.classes,
|
|
27
|
-
content = _ref.content
|
|
27
|
+
content = _ref.content,
|
|
28
|
+
HTMLRenderer = _ref.HTMLRenderer;
|
|
28
29
|
|
|
29
30
|
var codes = R.pipe(R.pluck('code'), R.filter(R.identity))(content);
|
|
30
31
|
var hasCodes = !R.isEmpty(codes);
|
|
@@ -34,7 +35,7 @@ var Flags = function Flags(_ref) {
|
|
|
34
35
|
})(codes);
|
|
35
36
|
return _react2.default.createElement(
|
|
36
37
|
_TooltipHeader.TooltipHeader,
|
|
37
|
-
{ classes: classes, content: content },
|
|
38
|
+
{ classes: classes, content: content, HTMLRenderer: HTMLRenderer },
|
|
38
39
|
_react2.default.createElement(
|
|
39
40
|
'sup',
|
|
40
41
|
{ className: classes.svgWrapper },
|
|
@@ -46,6 +47,7 @@ var Flags = function Flags(_ref) {
|
|
|
46
47
|
|
|
47
48
|
Flags.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
48
49
|
classes: _propTypes2.default.object,
|
|
50
|
+
HTMLRenderer: _propTypes2.default.func,
|
|
49
51
|
content: _propTypes2.default.arrayOf(_propTypes2.default.shape({
|
|
50
52
|
header: _propTypes2.default.string,
|
|
51
53
|
label: _propTypes2.default.string,
|
|
@@ -28,6 +28,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
28
28
|
var TooltipHeader = exports.TooltipHeader = function TooltipHeader(_ref) {
|
|
29
29
|
var children = _ref.children,
|
|
30
30
|
classes = _ref.classes,
|
|
31
|
+
HTMLRenderer = _ref.HTMLRenderer,
|
|
31
32
|
_ref$content = _ref.content,
|
|
32
33
|
content = _ref$content === undefined ? [] : _ref$content;
|
|
33
34
|
|
|
@@ -45,7 +46,7 @@ var TooltipHeader = exports.TooltipHeader = function TooltipHeader(_ref) {
|
|
|
45
46
|
'li',
|
|
46
47
|
{ key: label + '-' + index },
|
|
47
48
|
_react2.default.createElement(_Title2.default, { header: header }),
|
|
48
|
-
label,
|
|
49
|
+
R.is(Function, HTMLRenderer) ? _react2.default.createElement(HTMLRenderer, { html: label }) : label,
|
|
49
50
|
R.not(R.isEmpty(sub)) && _react2.default.createElement(
|
|
50
51
|
'ul',
|
|
51
52
|
{ className: classes.subContent },
|
|
@@ -54,7 +55,7 @@ var TooltipHeader = exports.TooltipHeader = function TooltipHeader(_ref) {
|
|
|
54
55
|
return _react2.default.createElement(
|
|
55
56
|
'li',
|
|
56
57
|
{ key: label + '-' + index },
|
|
57
|
-
label
|
|
58
|
+
R.is(Function, HTMLRenderer) ? _react2.default.createElement(HTMLRenderer, { html: label }) : label
|
|
58
59
|
);
|
|
59
60
|
}, sub)
|
|
60
61
|
)
|
|
@@ -91,7 +92,8 @@ TooltipHeader.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
91
92
|
sub: _propTypes2.default.arrayOf(_propTypes2.default.shape({
|
|
92
93
|
label: _propTypes2.default.string
|
|
93
94
|
}))
|
|
94
|
-
}))
|
|
95
|
+
})),
|
|
96
|
+
HTMLRenderer: _propTypes2.default.func
|
|
95
97
|
} : {};
|
|
96
98
|
|
|
97
99
|
exports.default = TooltipHeader;
|
|
@@ -226,9 +226,9 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
226
226
|
open = _useState[0],
|
|
227
227
|
setOpen = _useState[1];
|
|
228
228
|
|
|
229
|
-
var _useState2 = (0, _react.useState)(
|
|
230
|
-
|
|
231
|
-
|
|
229
|
+
var _useState2 = (0, _react.useState)(null),
|
|
230
|
+
selectedId = _useState2[0],
|
|
231
|
+
setSelectedId = _useState2[1];
|
|
232
232
|
|
|
233
233
|
var _useState3 = (0, _react.useState)({}),
|
|
234
234
|
selection = _useState3[0],
|
|
@@ -281,9 +281,12 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
281
281
|
rest = _objectWithoutProperties(props, ['list', 'labelRenderer', 'onClick', 'handleChangePanel', 'onClosePanel', 'isNarrow', 'labels', 'disableAccessor', 'isApplyHiddenNarrow', 'expandAll', 'collapseAll', 'expandedIds', 'allItems', 'periodPanel', 'classes', 'testId', 'tagAccessor', 'tagAriaLabel', 'children', 'styles']);
|
|
282
282
|
|
|
283
283
|
var handleChange = function handleChange(e, item) {
|
|
284
|
-
|
|
284
|
+
var filterSelection = R.pipe(R.propOr([], item.id), function (arr) {
|
|
285
|
+
return R.zipObj(arr, arr);
|
|
286
|
+
})(allSelection);
|
|
287
|
+
setSelection(_extends({}, filterSelection));
|
|
285
288
|
handleChangePanel(item.id, selection, allSelection);
|
|
286
|
-
|
|
289
|
+
setSelectedId(item.id);
|
|
287
290
|
setOpen(true);
|
|
288
291
|
};
|
|
289
292
|
var handleSubmit = function handleSubmit() {
|
|
@@ -291,17 +294,24 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
291
294
|
setAllSelection({});
|
|
292
295
|
setSelection({});
|
|
293
296
|
setOpen(false);
|
|
294
|
-
|
|
297
|
+
setSelectedId(null);
|
|
295
298
|
onClosePanel();
|
|
296
299
|
};
|
|
297
300
|
var handleClose = function handleClose() {
|
|
298
301
|
setOpen(false);
|
|
299
302
|
setAllSelection({});
|
|
300
303
|
setSelection({});
|
|
301
|
-
|
|
304
|
+
setSelectedId(null);
|
|
302
305
|
onClosePanel();
|
|
303
306
|
};
|
|
304
307
|
|
|
308
|
+
var filter = (0, _react.useMemo)(function () {
|
|
309
|
+
if (!selectedId) return {};
|
|
310
|
+
return R.find(function (item) {
|
|
311
|
+
return item.id === selectedId;
|
|
312
|
+
})(list);
|
|
313
|
+
}, [selectedId, list]);
|
|
314
|
+
|
|
305
315
|
var isHidden = open && isNarrow;
|
|
306
316
|
var isNotHiddenButton = (!R.isEmpty(allSelection) || !isApplyHiddenNarrow) && isNarrow;
|
|
307
317
|
(0, _react.useEffect)(function () {
|
|
@@ -366,7 +376,7 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
366
376
|
component: function component(props) {
|
|
367
377
|
return PaperComponent(_extends({
|
|
368
378
|
label: labelRenderer(item),
|
|
369
|
-
selected:
|
|
379
|
+
selected: selectedId === item.id,
|
|
370
380
|
tag: R.isNil(item.tag) ? _react2.default.createElement(
|
|
371
381
|
Chip,
|
|
372
382
|
{ items: item.values, tagValueLabel: tagValueLabel },
|
|
@@ -426,8 +436,8 @@ var DynamicDrawer = function DynamicDrawer(props) {
|
|
|
426
436
|
styles: styles
|
|
427
437
|
},
|
|
428
438
|
R.equals(filter.id, periodPanel) ? children : _react2.default.createElement(_AdvancedSelection2.default, _extends({
|
|
429
|
-
id:
|
|
430
|
-
items: filter.values,
|
|
439
|
+
id: selectedId,
|
|
440
|
+
items: filter.values || [],
|
|
431
441
|
isOpen: open,
|
|
432
442
|
labelRenderer: labelRenderer,
|
|
433
443
|
disableAccessor: disableAccessor ? R.pipe(R.prop('isEnabled'), R.not) : undefined,
|