@sis-cc/dotstatsuite-visions 12.20.2 → 12.22.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.
@@ -75,12 +75,7 @@ var useStyles = makeStyles(function (theme) {
75
75
  marginRight: 10
76
76
  },
77
77
  selectionMenu: {
78
- width: '50%',
79
- maxHeight: '100%',
80
- position: 'absolute',
81
- top: 110,
82
- right: 48,
83
- zIndex: 1
78
+ padding: 24
84
79
  },
85
80
  narrowSelectionMenu: {
86
81
  width: '100%'
@@ -91,6 +86,12 @@ var useStyles = makeStyles(function (theme) {
91
86
  flexWrap: 'wrap',
92
87
  alignItems: 'flex-start'
93
88
  },
89
+ selectButtonNarrow: {
90
+ width: 160,
91
+ height: 50,
92
+ border: '1px solid ' + theme.palette.primary.light,
93
+ margin: 5
94
+ },
94
95
  selectButton: {
95
96
  color: theme.palette.primary.main,
96
97
  '&:hover': {
@@ -115,7 +116,7 @@ var useStyles = makeStyles(function (theme) {
115
116
  },
116
117
  '& img': {
117
118
  width: 21,
118
- height: 24
119
+ height: 30
119
120
  }
120
121
  },
121
122
  hint: {
@@ -158,7 +159,7 @@ var useStyles = makeStyles(function (theme) {
158
159
  });
159
160
 
160
161
  var AdvancedSelection = function AdvancedSelection(props) {
161
- var _cx, _cx2, _cx3, _cx4;
162
+ var _cx, _cx2;
162
163
 
163
164
  var id = props.id,
164
165
  items = props.items,
@@ -195,8 +196,9 @@ var AdvancedSelection = function AdvancedSelection(props) {
195
196
  };
196
197
 
197
198
  var selectionItems = R.map(function (item) {
199
+ var selectedIds = R.propOr([], id, allSelection);
198
200
  return _extends({}, item, {
199
- isSelected: R.has(item.id, selection) ? !item.isSelected : !!item.isSelected
201
+ isSelected: R.includes(item.id, selectedIds) ? !item.isSelected : !!item.isSelected
200
202
  });
201
203
  }, items);
202
204
  var indexedFilteredItems = R.indexBy(getHierarchicalId, selectionItems);
@@ -306,38 +308,6 @@ var AdvancedSelection = function AdvancedSelection(props) {
306
308
  React.createElement(
307
309
  'div',
308
310
  { className: cx(classes.selectModeContainer, (_cx2 = {}, _cx2[classes.narrowHeader] = isNarrow, _cx2)) },
309
- React.createElement(
310
- 'div',
311
- { className: classes.hint },
312
- React.createElement(
313
- Tooltip,
314
- {
315
- role: 'tooltip',
316
- variant: 'light',
317
- title: React.createElement(
318
- Typography,
319
- { variant: 'body2' },
320
- R.prop('hint', labels)
321
- ),
322
- 'aria-label': R.prop('hint', labels),
323
- tabIndex: 0
324
- },
325
- React.createElement(
326
- IconButton,
327
- null,
328
- React.createElement(HintIcon, null)
329
- )
330
- ),
331
- React.createElement(
332
- Typography,
333
- {
334
- className: classes.selectionTitle,
335
- 'aria-label': R.prop('selectionMode', labels),
336
- tabIndex: 0
337
- },
338
- R.prop('selectionMode', labels)
339
- )
340
- ),
341
311
  React.createElement(ButtonCarousel, {
342
312
  selectionModes: selectionOptions,
343
313
  selectionMode: selectionMode,
@@ -406,7 +376,7 @@ var AdvancedSelection = function AdvancedSelection(props) {
406
376
  return onChangeSelection(selection, ids, filter);
407
377
  },
408
378
  withExpandControl: true,
409
- treeHeight: isNarrow ? 0 : '700px',
379
+ treeHeight: isNarrow ? 0 : '450px',
410
380
  scopeGetter: scopeGetter,
411
381
  expandedIds: expandedIds
412
382
  }))
@@ -416,7 +386,7 @@ var AdvancedSelection = function AdvancedSelection(props) {
416
386
  { item: true, container: true, xs: 4 },
417
387
  React.createElement(
418
388
  'div',
419
- { className: cx(classes.selectModeContainer, (_cx3 = {}, _cx3[classes.narrowHeader] = isNarrow, _cx3)) },
389
+ { className: cx(classes.selectModeContainer) },
420
390
  React.createElement(
421
391
  'div',
422
392
  { className: classes.hint },
@@ -451,7 +421,7 @@ var AdvancedSelection = function AdvancedSelection(props) {
451
421
  ),
452
422
  React.createElement(
453
423
  'div',
454
- { className: cx(classes.selectModeContainer, (_cx4 = {}, _cx4[classes.narrowHeader] = isNarrow, _cx4)) },
424
+ { className: cx(classes.selectModeContainer, classes.selectionMenu) },
455
425
  mapIndexed(function (_ref) {
456
426
  var value = _ref.value,
457
427
  label = _ref.label,
@@ -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 } from 'react';
5
+ import React, { useState, useEffect } from 'react';
6
6
  import PropTypes from 'prop-types';
7
7
  import * as R from 'ramda';
8
8
  import cx from 'classnames';
@@ -56,7 +56,10 @@ var TabPanel = function TabPanel(props) {
56
56
  onClose = props.onClose,
57
57
  isNarrow = props.isNarrow,
58
58
  setOpen = props.setOpen,
59
- other = _objectWithoutProperties(props, ['children', 'open', 'item', 'classes', 'labels', 'onClose', 'isNarrow', 'setOpen']);
59
+ labelRenderer = props.labelRenderer,
60
+ _props$styles = props.styles,
61
+ styles = _props$styles === undefined ? {} : _props$styles,
62
+ other = _objectWithoutProperties(props, ['children', 'open', 'item', 'classes', 'labels', 'onClose', 'isNarrow', 'setOpen', 'labelRenderer', 'styles']);
60
63
 
61
64
  return React.createElement(
62
65
  'div',
@@ -65,40 +68,70 @@ var TabPanel = function TabPanel(props) {
65
68
  hidden: !open,
66
69
  id: 'vertical-tabpanel-' + item.index,
67
70
  'aria-labelledby': 'vertical-tab-' + item.index,
68
- className: isNarrow ? classes.tabPanelNarrow : classes.tabPanel
71
+ className: isNarrow ? classes.tabPanelNarrow : classes.tabPanel,
72
+ style: styles
69
73
  }, other),
70
74
  open && React.createElement(
71
75
  Box,
72
76
  { sx: { p: 3 } },
73
- isNarrow && React.createElement(
74
- IconButton,
75
- {
76
- onClick: function onClick() {
77
- return setOpen(false);
78
- },
79
- 'data-testid': 'back_button',
80
- 'aria-label': R.prop('cancel', labels),
81
- sx: {
82
- padding: 0,
83
- float: 'left'
84
- },
85
- size: 'large'
86
- },
87
- React.createElement(BackIcon, null)
88
- ),
89
77
  React.createElement(
90
- IconButton,
78
+ Box,
91
79
  {
92
- onClick: onClose,
93
- 'aria-label': R.prop('cancel', labels),
94
- sx: {
95
- color: 'grey !important',
96
- padding: 0,
97
- float: 'right'
98
- },
99
- size: 'large'
80
+ display: 'flex',
81
+ justifyContent: isNarrow ? 'space-between' : 'flex-end',
82
+ alignItems: 'center'
100
83
  },
101
- React.createElement(CloseIcon, null)
84
+ isNarrow && React.createElement(
85
+ Box,
86
+ { display: 'flex', justifyContent: 'flex-start', alignItems: 'center' },
87
+ React.createElement(
88
+ IconButton,
89
+ {
90
+ onClick: function onClick() {
91
+ return setOpen(false);
92
+ },
93
+ 'data-testid': 'back_button',
94
+ 'aria-label': R.prop('cancel', labels),
95
+ sx: {
96
+ padding: 0,
97
+ float: 'left',
98
+ justifyContent: 'flex-start',
99
+ minWidth: '24px'
100
+ },
101
+ size: 'large',
102
+ edge: 'start'
103
+ },
104
+ React.createElement(BackIcon, null)
105
+ ),
106
+ React.createElement(
107
+ Typography,
108
+ {
109
+ variant: 'h6',
110
+ 'aria-label': R.prop('title', labels)(labelRenderer(item)),
111
+ tabIndex: 0,
112
+ sx: {
113
+ margin: 0,
114
+ padding: 0
115
+ }
116
+ },
117
+ R.prop('title', labels)(labelRenderer(item))
118
+ )
119
+ ),
120
+ React.createElement(
121
+ IconButton,
122
+ {
123
+ onClick: onClose,
124
+ 'aria-label': R.prop('cancel', labels),
125
+ sx: {
126
+ color: 'grey !important',
127
+ minWidth: '24px',
128
+ padding: 0,
129
+ float: 'right'
130
+ },
131
+ size: 'large'
132
+ },
133
+ React.createElement(CloseIcon, null)
134
+ )
102
135
  ),
103
136
  children
104
137
  )
@@ -112,7 +145,9 @@ TabPanel.propTypes = process.env.NODE_ENV !== "production" ? {
112
145
  onClose: PropTypes.func,
113
146
  children: PropTypes.node,
114
147
  isNarrow: PropTypes.bool,
115
- setOpen: PropTypes.func
148
+ setOpen: PropTypes.func,
149
+ labelRenderer: PropTypes.func,
150
+ styles: PropTypes.object
116
151
  } : {};
117
152
 
118
153
  var PaperComponent = function PaperComponent(props) {
@@ -164,6 +199,10 @@ var DynamicDrawer = function DynamicDrawer(props) {
164
199
  allSelection = _useState4[0],
165
200
  setAllSelection = _useState4[1];
166
201
 
202
+ var _useState5 = useState(-1),
203
+ value = _useState5[0],
204
+ setValue = _useState5[1];
205
+
167
206
  var getCounter = function getCounter(items, tagAccessor) {
168
207
  var selectedItemsIds = R.reduce(function (acc, item) {
169
208
  if (R.prop('isSelected', item)) {
@@ -199,13 +238,15 @@ var DynamicDrawer = function DynamicDrawer(props) {
199
238
  tagAccessor = props.tagAccessor,
200
239
  tagAriaLabel = props.tagAriaLabel,
201
240
  children = props.children,
202
- rest = _objectWithoutProperties(props, ['list', 'labelRenderer', 'onClick', 'handleChangePanel', 'isNarrow', 'labels', 'disableAccessor', 'expandAll', 'collapseAll', 'expandedIds', 'allItems', 'periodPanel', 'classes', 'testId', 'tagAccessor', 'tagAriaLabel', 'children']);
241
+ _props$styles2 = props.styles,
242
+ styles = _props$styles2 === undefined ? {} : _props$styles2,
243
+ rest = _objectWithoutProperties(props, ['list', 'labelRenderer', 'onClick', 'handleChangePanel', 'isNarrow', 'labels', 'disableAccessor', 'expandAll', 'collapseAll', 'expandedIds', 'allItems', 'periodPanel', 'classes', 'testId', 'tagAccessor', 'tagAriaLabel', 'children', 'styles']);
203
244
 
204
245
  var handleChange = function handleChange(e, item) {
205
- console.log({ item: item, selection: selection, allSelection: allSelection });
206
246
  setSelection(_extends({}, allSelection[item.id]));
207
- handleChangePanel(item.id, allSelection);
247
+ handleChangePanel(item.id, selection, allSelection);
208
248
  setFilter(item);
249
+ setValue(item.id);
209
250
  setOpen(true);
210
251
  };
211
252
  var handleSubmit = function handleSubmit() {
@@ -213,24 +254,53 @@ var DynamicDrawer = function DynamicDrawer(props) {
213
254
  setAllSelection({});
214
255
  setSelection({});
215
256
  setOpen(false);
257
+ setFilter({});
216
258
  };
217
259
  var handleClose = function handleClose() {
218
260
  setOpen(false);
219
261
  setAllSelection({});
220
262
  setSelection({});
263
+ setFilter({});
221
264
  };
265
+
222
266
  var isHidden = open && isNarrow;
223
267
  var isNotHiddenButton = !R.isEmpty(allSelection) && isNarrow;
268
+ useEffect(function () {
269
+ if (open) {
270
+ document.body.style.overflow = 'hidden';
271
+ } else {
272
+ document.body.style.overflow = '';
273
+ }
274
+ return function () {
275
+ document.body.style.overflow = '';
276
+ };
277
+ }, [open]);
224
278
 
225
279
  return React.createElement(
226
280
  'div',
227
281
  { style: { display: 'flex', flexDirection: 'row' } },
282
+ open && !isNarrow && React.createElement(Box, {
283
+ onClick: function onClick() {
284
+ return handleClose();
285
+ },
286
+ sx: {
287
+ position: 'fixed',
288
+ top: 0,
289
+ left: 0,
290
+ width: '100vw',
291
+ height: '100vh',
292
+ zIndex: 990
293
+ }
294
+ }),
228
295
  React.createElement(
229
296
  Tabs,
230
297
  {
231
298
  orientation: 'vertical',
232
299
  variant: 'scrollable',
233
- value: false,
300
+ TabIndicatorProps: { style: { transition: 'none' } },
301
+ scrollButtons: false,
302
+ disableScrollButtons: true,
303
+ value: value,
234
304
  onChange: handleChange,
235
305
  'aria-label': 'filters',
236
306
  'data-testid': testId,
@@ -239,7 +309,9 @@ var DynamicDrawer = function DynamicDrawer(props) {
239
309
  width: '100%',
240
310
  height: '100%',
241
311
  borderRight: 1,
242
- borderColor: 'divider'
312
+ borderColor: 'divider',
313
+ zIndex: 1000,
314
+ overflow: 'auto'
243
315
  }
244
316
  },
245
317
  R.map(function (item) {
@@ -272,7 +344,9 @@ var DynamicDrawer = function DynamicDrawer(props) {
272
344
  alignItems: 'start',
273
345
  maxWidth: '100%'
274
346
  },
275
- wrapped: true
347
+ wrapped: true,
348
+ disableRipple: true,
349
+ disableFocusRipple: true
276
350
  });
277
351
  })(list),
278
352
  open && !isNarrow && React.createElement(
@@ -308,7 +382,9 @@ var DynamicDrawer = function DynamicDrawer(props) {
308
382
  classes: classes,
309
383
  onClose: handleClose,
310
384
  isNarrow: isNarrow,
311
- setOpen: setOpen
385
+ setOpen: setOpen,
386
+ labelRenderer: labelRenderer,
387
+ styles: styles
312
388
  },
313
389
  R.equals(filter.id, periodPanel) ? children : React.createElement(AdvancedSelection, _extends({
314
390
  id: filter.id,
@@ -364,7 +440,8 @@ DynamicDrawer.propTypes = process.env.NODE_ENV !== "production" ? {
364
440
  periodPanel: PropTypes.string,
365
441
  isNarrow: PropTypes.bool,
366
442
  disableAccessor: PropTypes.func,
367
- children: PropTypes.node
443
+ children: PropTypes.node,
444
+ styles: PropTypes.object
368
445
  } : {};
369
446
 
370
447
  export default DynamicDrawer;
@@ -1,8 +1,9 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import * as R from 'ramda';
4
- import { Box, Button, Paper, Typography } from '@mui/material';
5
- import { Tooltip } from '..';
4
+ import cx from 'classnames';
5
+ import { Box, Paper, Typography } from '@mui/material';
6
+ import { Tooltip, Button } from '..';
6
7
 
7
8
  var mapIndexed = R.addIndex(R.map);
8
9
  var ButtonCarousel = function ButtonCarousel(_ref) {
@@ -40,7 +41,7 @@ var ButtonCarousel = function ButtonCarousel(_ref) {
40
41
  React.createElement(
41
42
  Button,
42
43
  {
43
- className: classes.selectButton,
44
+ className: cx(classes.selectButton, classes.selectButtonNarrow),
44
45
  selected: value === selectionMode,
45
46
  onClick: function onClick() {
46
47
  setSelectionMode(value);
@@ -51,8 +52,8 @@ var ButtonCarousel = function ButtonCarousel(_ref) {
51
52
  sx: {
52
53
  flex: '0 0 auto', // Prevents buttons from shrinking
53
54
  scrollSnapAlign: 'center',
54
- minWidth: 120, // Minimum width for buttons
55
- whiteSpace: 'nowrap'
55
+ minWidth: 40, // Minimum width for buttons
56
+ whiteSpace: 'wrap'
56
57
  }
57
58
  },
58
59
  React.createElement(
@@ -47,7 +47,6 @@ var Period = function Period(_ref) {
47
47
  var destructuringDates = R.map(getDestructuringDate)(period);
48
48
 
49
49
  var onClickFrequency = function onClickFrequency(e, value) {
50
- console.log(value);
51
50
  if (R.is(Function, changeFrequency)) return changeFrequency(value);
52
51
  };
53
52
  var _getIsDisabled = function _getIsDisabled(getter) {
@@ -132,12 +132,7 @@ var useStyles = (0, _makeStyles2.default)(function (theme) {
132
132
  marginRight: 10
133
133
  },
134
134
  selectionMenu: {
135
- width: '50%',
136
- maxHeight: '100%',
137
- position: 'absolute',
138
- top: 110,
139
- right: 48,
140
- zIndex: 1
135
+ padding: 24
141
136
  },
142
137
  narrowSelectionMenu: {
143
138
  width: '100%'
@@ -148,6 +143,12 @@ var useStyles = (0, _makeStyles2.default)(function (theme) {
148
143
  flexWrap: 'wrap',
149
144
  alignItems: 'flex-start'
150
145
  },
146
+ selectButtonNarrow: {
147
+ width: 160,
148
+ height: 50,
149
+ border: '1px solid ' + theme.palette.primary.light,
150
+ margin: 5
151
+ },
151
152
  selectButton: {
152
153
  color: theme.palette.primary.main,
153
154
  '&:hover': {
@@ -172,7 +173,7 @@ var useStyles = (0, _makeStyles2.default)(function (theme) {
172
173
  },
173
174
  '& img': {
174
175
  width: 21,
175
- height: 24
176
+ height: 30
176
177
  }
177
178
  },
178
179
  hint: {
@@ -215,7 +216,7 @@ var useStyles = (0, _makeStyles2.default)(function (theme) {
215
216
  });
216
217
 
217
218
  var AdvancedSelection = function AdvancedSelection(props) {
218
- var _cx, _cx2, _cx3, _cx4;
219
+ var _cx, _cx2;
219
220
 
220
221
  var id = props.id,
221
222
  items = props.items,
@@ -252,8 +253,9 @@ var AdvancedSelection = function AdvancedSelection(props) {
252
253
  };
253
254
 
254
255
  var selectionItems = R.map(function (item) {
256
+ var selectedIds = R.propOr([], id, allSelection);
255
257
  return _extends({}, item, {
256
- isSelected: R.has(item.id, selection) ? !item.isSelected : !!item.isSelected
258
+ isSelected: R.includes(item.id, selectedIds) ? !item.isSelected : !!item.isSelected
257
259
  });
258
260
  }, items);
259
261
  var indexedFilteredItems = R.indexBy(_utils.getHierarchicalId, selectionItems);
@@ -363,38 +365,6 @@ var AdvancedSelection = function AdvancedSelection(props) {
363
365
  _react2.default.createElement(
364
366
  'div',
365
367
  { className: (0, _classnames2.default)(classes.selectModeContainer, (_cx2 = {}, _cx2[classes.narrowHeader] = isNarrow, _cx2)) },
366
- _react2.default.createElement(
367
- 'div',
368
- { className: classes.hint },
369
- _react2.default.createElement(
370
- _.Tooltip,
371
- {
372
- role: 'tooltip',
373
- variant: 'light',
374
- title: _react2.default.createElement(
375
- _Typography2.default,
376
- { variant: 'body2' },
377
- R.prop('hint', labels)
378
- ),
379
- 'aria-label': R.prop('hint', labels),
380
- tabIndex: 0
381
- },
382
- _react2.default.createElement(
383
- _Button2.default,
384
- null,
385
- _react2.default.createElement(_EmojiObjects2.default, null)
386
- )
387
- ),
388
- _react2.default.createElement(
389
- _Typography2.default,
390
- {
391
- className: classes.selectionTitle,
392
- 'aria-label': R.prop('selectionMode', labels),
393
- tabIndex: 0
394
- },
395
- R.prop('selectionMode', labels)
396
- )
397
- ),
398
368
  _react2.default.createElement(_SelectionModesMobile2.default, {
399
369
  selectionModes: selectionOptions,
400
370
  selectionMode: selectionMode,
@@ -463,7 +433,7 @@ var AdvancedSelection = function AdvancedSelection(props) {
463
433
  return onChangeSelection(selection, ids, filter);
464
434
  },
465
435
  withExpandControl: true,
466
- treeHeight: isNarrow ? 0 : '700px',
436
+ treeHeight: isNarrow ? 0 : '450px',
467
437
  scopeGetter: scopeGetter,
468
438
  expandedIds: expandedIds
469
439
  }))
@@ -473,7 +443,7 @@ var AdvancedSelection = function AdvancedSelection(props) {
473
443
  { item: true, container: true, xs: 4 },
474
444
  _react2.default.createElement(
475
445
  'div',
476
- { className: (0, _classnames2.default)(classes.selectModeContainer, (_cx3 = {}, _cx3[classes.narrowHeader] = isNarrow, _cx3)) },
446
+ { className: (0, _classnames2.default)(classes.selectModeContainer) },
477
447
  _react2.default.createElement(
478
448
  'div',
479
449
  { className: classes.hint },
@@ -508,7 +478,7 @@ var AdvancedSelection = function AdvancedSelection(props) {
508
478
  ),
509
479
  _react2.default.createElement(
510
480
  'div',
511
- { className: (0, _classnames2.default)(classes.selectModeContainer, (_cx4 = {}, _cx4[classes.narrowHeader] = isNarrow, _cx4)) },
481
+ { className: (0, _classnames2.default)(classes.selectModeContainer, classes.selectionMenu) },
512
482
  mapIndexed(function (_ref) {
513
483
  var value = _ref.value,
514
484
  label = _ref.label,