@sis-cc/dotstatsuite-visions 12.1.0 → 12.2.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/CollapseButtons/Item.js +1 -0
- package/es/InputNumber/InputNumber.js +1 -1
- package/es/TableHtml5/header.js +1 -1
- package/es/VirtualizedTree/withSpotlight.js +38 -13
- package/es/theme.js +20 -7
- package/lib/CollapseButtons/Item.js +1 -0
- package/lib/InputNumber/InputNumber.js +1 -1
- package/lib/TableHtml5/header.js +1 -1
- package/lib/VirtualizedTree/withSpotlight.js +37 -12
- package/lib/theme.js +21 -7
- package/package.json +1 -1
- package/umd/@sis-cc/dotstatsuite-visions.js +62 -23
- package/umd/@sis-cc/dotstatsuite-visions.min.js +4 -4
- package/umd/@sis-cc/dotstatsuite-visions.min.js.map +1 -1
|
@@ -23,7 +23,7 @@ var useStyles = makeStyles(function (theme) {
|
|
|
23
23
|
margin: '0px 10px 0 10px'
|
|
24
24
|
},
|
|
25
25
|
input: {
|
|
26
|
-
padding: '4px
|
|
26
|
+
padding: '4px 4px',
|
|
27
27
|
height: 27,
|
|
28
28
|
'&[type=number]::-webkit-inner-spin-button, &[type=number]::-webkit-outer-spin-button': {
|
|
29
29
|
'-webkit-appearance': 'none',
|
package/es/TableHtml5/header.js
CHANGED
|
@@ -63,7 +63,7 @@ var Header = function Header(_ref) {
|
|
|
63
63
|
var theme = useTheme();
|
|
64
64
|
var isRtl = getIsRtl(theme);
|
|
65
65
|
|
|
66
|
-
var stickyLabelPosition = R.last(subHeadCellsWidth) +
|
|
66
|
+
var stickyLabelPosition = R.last(subHeadCellsWidth) + 'px + 30px + ' + theme.spacing(1);
|
|
67
67
|
|
|
68
68
|
if (R.compose(R.anyPass([R.isNil, R.isEmpty]), R.path([0, 'data']))(headerData)) return null;
|
|
69
69
|
return timesIndexed(function (index) {
|
|
@@ -5,31 +5,55 @@ function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in ob
|
|
|
5
5
|
/* eslint react/prop-types: 0 */
|
|
6
6
|
import * as R from 'ramda';
|
|
7
7
|
import React, { useEffect, useMemo, useState } from 'react';
|
|
8
|
-
import { getHierarchicalId } from './utils';
|
|
8
|
+
import { getDescendants, getHierarchicalId } from './utils';
|
|
9
9
|
|
|
10
10
|
export var spotlightFilter = function spotlightFilter(term) {
|
|
11
11
|
var labelRenderer = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : R.prop('label');
|
|
12
|
+
var displayChildren = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
12
13
|
return function (items) {
|
|
13
14
|
if (R.isEmpty(term) || R.isNil(term)) {
|
|
14
15
|
return items;
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
var groupedItemsByParentId = R.groupBy(R.propOr('#ROOT', 'parentId'), items);
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
|
|
20
|
+
var findParents = function findParents(item) {
|
|
21
|
+
var acc = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
22
|
+
|
|
23
|
+
var parentId = R.prop('parentId', item);
|
|
24
|
+
if (parentId && parentId !== '#ROOT') {
|
|
25
|
+
var parent = R.find(R.propEq('id', parentId), items);
|
|
26
|
+
if (parent) {
|
|
27
|
+
return findParents(parent, [parent].concat(acc));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return acc;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
var recurse = function recurse(item) {
|
|
34
|
+
var isValidItem = R.includes(R.toLower(term), R.toLower(labelRenderer(item)));
|
|
35
|
+
|
|
36
|
+
var result = [];
|
|
37
|
+
|
|
20
38
|
if (isValidItem) {
|
|
21
|
-
|
|
39
|
+
var parents = findParents(item);
|
|
40
|
+
result = [].concat(parents, [item]);
|
|
41
|
+
if (displayChildren) {
|
|
42
|
+
var children = getDescendants(R.prop('id', item), groupedItemsByParentId);
|
|
43
|
+
return [].concat(parents, [item], children);
|
|
44
|
+
}
|
|
22
45
|
}
|
|
23
46
|
if (R.has(getHierarchicalId(item), groupedItemsByParentId)) {
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
47
|
+
var childItems = groupedItemsByParentId[getHierarchicalId(item)] || [];
|
|
48
|
+
var matchingChildren = R.chain(recurse, childItems);
|
|
49
|
+
|
|
50
|
+
// res with any matching children
|
|
51
|
+
return R.uniq([].concat(result, matchingChildren));
|
|
28
52
|
}
|
|
29
|
-
return
|
|
30
|
-
}
|
|
53
|
+
return result;
|
|
54
|
+
};
|
|
31
55
|
|
|
32
|
-
return recurse
|
|
56
|
+
return R.uniq(R.chain(recurse, groupedItemsByParentId['#ROOT'] || []));
|
|
33
57
|
};
|
|
34
58
|
};
|
|
35
59
|
|
|
@@ -38,7 +62,8 @@ var withSpotlight = function withSpotlight(Component) {
|
|
|
38
62
|
var items = _ref.items,
|
|
39
63
|
defaultSpotlight = _ref.defaultSpotlight,
|
|
40
64
|
labelRenderer = _ref.labelRenderer,
|
|
41
|
-
|
|
65
|
+
displayChildren = _ref.displayChildren,
|
|
66
|
+
rest = _objectWithoutProperties(_ref, ['items', 'defaultSpotlight', 'labelRenderer', 'displayChildren']);
|
|
42
67
|
|
|
43
68
|
var _useState = useState({ term: '' }),
|
|
44
69
|
term = _useState[0].term,
|
|
@@ -51,7 +76,7 @@ var withSpotlight = function withSpotlight(Component) {
|
|
|
51
76
|
}, [defaultSpotlight]);
|
|
52
77
|
|
|
53
78
|
var filteredItems = useMemo(function () {
|
|
54
|
-
return spotlightFilter(term, labelRenderer)(items);
|
|
79
|
+
return spotlightFilter(term, labelRenderer, displayChildren)(items);
|
|
55
80
|
}, [term, items]);
|
|
56
81
|
|
|
57
82
|
return React.createElement(Component, _extends({}, rest, {
|
package/es/theme.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
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
|
+
|
|
1
3
|
export var innerPalette = {
|
|
2
4
|
highlight1: '#f7a42c',
|
|
3
5
|
highlight2: '#8CC841',
|
|
@@ -13,7 +15,8 @@ export var innerPalette = {
|
|
|
13
15
|
|
|
14
16
|
export var sisccTheme = function sisccTheme(_ref) {
|
|
15
17
|
var rtl = _ref.rtl,
|
|
16
|
-
isA11y = _ref.isA11y,
|
|
18
|
+
_ref$isA11y = _ref.isA11y,
|
|
19
|
+
isA11y = _ref$isA11y === undefined ? false : _ref$isA11y,
|
|
17
20
|
_ref$outerPalette = _ref.outerPalette,
|
|
18
21
|
outerPalette = _ref$outerPalette === undefined ? {} : _ref$outerPalette;
|
|
19
22
|
|
|
@@ -21,9 +24,9 @@ export var sisccTheme = function sisccTheme(_ref) {
|
|
|
21
24
|
outlineColor: outerPalette.highlight1 || innerPalette.highlight1
|
|
22
25
|
};
|
|
23
26
|
|
|
24
|
-
var buttonBaseFocus = {
|
|
27
|
+
var buttonBaseFocus = isA11y && {
|
|
25
28
|
borderColor: outerPalette.highlight1 || innerPalette.highlight1,
|
|
26
|
-
'
|
|
29
|
+
'&:focus': {
|
|
27
30
|
outlineColor: outerPalette.highlight1 || innerPalette.highlight1,
|
|
28
31
|
outlineWidth: 1,
|
|
29
32
|
outlineStyle: 'auto'
|
|
@@ -44,7 +47,11 @@ export var sisccTheme = function sisccTheme(_ref) {
|
|
|
44
47
|
disableRipple: true
|
|
45
48
|
},
|
|
46
49
|
styleOverrides: {
|
|
47
|
-
root:
|
|
50
|
+
root: _extends({
|
|
51
|
+
'&:focus': {
|
|
52
|
+
outline: 'none'
|
|
53
|
+
}
|
|
54
|
+
}, buttonBaseFocus)
|
|
48
55
|
}
|
|
49
56
|
},
|
|
50
57
|
MuiUseMediaQuery: {
|
|
@@ -79,7 +86,7 @@ export var sisccTheme = function sisccTheme(_ref) {
|
|
|
79
86
|
MuiAccordion: {
|
|
80
87
|
styleOverrides: {
|
|
81
88
|
root: {
|
|
82
|
-
'
|
|
89
|
+
'&.Mui-expanded': {
|
|
83
90
|
margin: 0
|
|
84
91
|
}
|
|
85
92
|
}
|
|
@@ -88,7 +95,10 @@ export var sisccTheme = function sisccTheme(_ref) {
|
|
|
88
95
|
MuiButton: {
|
|
89
96
|
styleOverrides: {
|
|
90
97
|
root: {
|
|
91
|
-
textTransform: 'none'
|
|
98
|
+
textTransform: 'none',
|
|
99
|
+
'&:focus': {
|
|
100
|
+
outline: 'none'
|
|
101
|
+
}
|
|
92
102
|
},
|
|
93
103
|
textPrimary: {
|
|
94
104
|
'&:hover': {
|
|
@@ -125,6 +135,9 @@ export var sisccTheme = function sisccTheme(_ref) {
|
|
|
125
135
|
}
|
|
126
136
|
},
|
|
127
137
|
MuiLink: {
|
|
138
|
+
defaultProps: {
|
|
139
|
+
underline: 'none'
|
|
140
|
+
},
|
|
128
141
|
styleOverrides: {
|
|
129
142
|
root: {
|
|
130
143
|
color: outerPalette.primaryMain || innerPalette.primaryMain,
|
|
@@ -134,7 +147,7 @@ export var sisccTheme = function sisccTheme(_ref) {
|
|
|
134
147
|
'&.Mui-focused': isA11y && focus
|
|
135
148
|
},
|
|
136
149
|
button: {
|
|
137
|
-
'
|
|
150
|
+
'&:focus': isA11y && focus
|
|
138
151
|
}
|
|
139
152
|
}
|
|
140
153
|
},
|
|
@@ -58,7 +58,7 @@ var useStyles = (0, _makeStyles2.default)(function (theme) {
|
|
|
58
58
|
margin: '0px 10px 0 10px'
|
|
59
59
|
},
|
|
60
60
|
input: {
|
|
61
|
-
padding: '4px
|
|
61
|
+
padding: '4px 4px',
|
|
62
62
|
height: 27,
|
|
63
63
|
'&[type=number]::-webkit-inner-spin-button, &[type=number]::-webkit-outer-spin-button': {
|
|
64
64
|
'-webkit-appearance': 'none',
|
package/lib/TableHtml5/header.js
CHANGED
|
@@ -100,7 +100,7 @@ var Header = function Header(_ref) {
|
|
|
100
100
|
var theme = (0, _styles.useTheme)();
|
|
101
101
|
var isRtl = (0, _utils.getIsRtl)(theme);
|
|
102
102
|
|
|
103
|
-
var stickyLabelPosition = R.last(subHeadCellsWidth) +
|
|
103
|
+
var stickyLabelPosition = R.last(subHeadCellsWidth) + 'px + 30px + ' + theme.spacing(1);
|
|
104
104
|
|
|
105
105
|
if (R.compose(R.anyPass([R.isNil, R.isEmpty]), R.path([0, 'data']))(headerData)) return null;
|
|
106
106
|
return timesIndexed(function (index) {
|
|
@@ -24,27 +24,51 @@ function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in ob
|
|
|
24
24
|
|
|
25
25
|
var spotlightFilter = exports.spotlightFilter = function spotlightFilter(term) {
|
|
26
26
|
var labelRenderer = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : R.prop('label');
|
|
27
|
+
var displayChildren = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
27
28
|
return function (items) {
|
|
28
29
|
if (R.isEmpty(term) || R.isNil(term)) {
|
|
29
30
|
return items;
|
|
30
31
|
}
|
|
31
32
|
|
|
32
33
|
var groupedItemsByParentId = R.groupBy(R.propOr('#ROOT', 'parentId'), items);
|
|
33
|
-
|
|
34
|
-
|
|
34
|
+
|
|
35
|
+
var findParents = function findParents(item) {
|
|
36
|
+
var acc = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
37
|
+
|
|
38
|
+
var parentId = R.prop('parentId', item);
|
|
39
|
+
if (parentId && parentId !== '#ROOT') {
|
|
40
|
+
var parent = R.find(R.propEq('id', parentId), items);
|
|
41
|
+
if (parent) {
|
|
42
|
+
return findParents(parent, [parent].concat(acc));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return acc;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
var recurse = function recurse(item) {
|
|
49
|
+
var isValidItem = R.includes(R.toLower(term), R.toLower(labelRenderer(item)));
|
|
50
|
+
|
|
51
|
+
var result = [];
|
|
52
|
+
|
|
35
53
|
if (isValidItem) {
|
|
36
|
-
|
|
54
|
+
var parents = findParents(item);
|
|
55
|
+
result = [].concat(parents, [item]);
|
|
56
|
+
if (displayChildren) {
|
|
57
|
+
var children = (0, _utils.getDescendants)(R.prop('id', item), groupedItemsByParentId);
|
|
58
|
+
return [].concat(parents, [item], children);
|
|
59
|
+
}
|
|
37
60
|
}
|
|
38
61
|
if (R.has((0, _utils.getHierarchicalId)(item), groupedItemsByParentId)) {
|
|
39
|
-
var
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
62
|
+
var childItems = groupedItemsByParentId[(0, _utils.getHierarchicalId)(item)] || [];
|
|
63
|
+
var matchingChildren = R.chain(recurse, childItems);
|
|
64
|
+
|
|
65
|
+
// res with any matching children
|
|
66
|
+
return R.uniq([].concat(result, matchingChildren));
|
|
43
67
|
}
|
|
44
|
-
return
|
|
45
|
-
}
|
|
68
|
+
return result;
|
|
69
|
+
};
|
|
46
70
|
|
|
47
|
-
return recurse
|
|
71
|
+
return R.uniq(R.chain(recurse, groupedItemsByParentId['#ROOT'] || []));
|
|
48
72
|
};
|
|
49
73
|
};
|
|
50
74
|
|
|
@@ -53,7 +77,8 @@ var withSpotlight = function withSpotlight(Component) {
|
|
|
53
77
|
var items = _ref.items,
|
|
54
78
|
defaultSpotlight = _ref.defaultSpotlight,
|
|
55
79
|
labelRenderer = _ref.labelRenderer,
|
|
56
|
-
|
|
80
|
+
displayChildren = _ref.displayChildren,
|
|
81
|
+
rest = _objectWithoutProperties(_ref, ['items', 'defaultSpotlight', 'labelRenderer', 'displayChildren']);
|
|
57
82
|
|
|
58
83
|
var _useState = (0, _react.useState)({ term: '' }),
|
|
59
84
|
term = _useState[0].term,
|
|
@@ -66,7 +91,7 @@ var withSpotlight = function withSpotlight(Component) {
|
|
|
66
91
|
}, [defaultSpotlight]);
|
|
67
92
|
|
|
68
93
|
var filteredItems = (0, _react.useMemo)(function () {
|
|
69
|
-
return spotlightFilter(term, labelRenderer)(items);
|
|
94
|
+
return spotlightFilter(term, labelRenderer, displayChildren)(items);
|
|
70
95
|
}, [term, items]);
|
|
71
96
|
|
|
72
97
|
return _react2.default.createElement(Component, _extends({}, rest, {
|
package/lib/theme.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
+
|
|
5
|
+
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; };
|
|
6
|
+
|
|
4
7
|
var innerPalette = exports.innerPalette = {
|
|
5
8
|
highlight1: '#f7a42c',
|
|
6
9
|
highlight2: '#8CC841',
|
|
@@ -16,7 +19,8 @@ var innerPalette = exports.innerPalette = {
|
|
|
16
19
|
|
|
17
20
|
var sisccTheme = exports.sisccTheme = function sisccTheme(_ref) {
|
|
18
21
|
var rtl = _ref.rtl,
|
|
19
|
-
isA11y = _ref.isA11y,
|
|
22
|
+
_ref$isA11y = _ref.isA11y,
|
|
23
|
+
isA11y = _ref$isA11y === undefined ? false : _ref$isA11y,
|
|
20
24
|
_ref$outerPalette = _ref.outerPalette,
|
|
21
25
|
outerPalette = _ref$outerPalette === undefined ? {} : _ref$outerPalette;
|
|
22
26
|
|
|
@@ -24,9 +28,9 @@ var sisccTheme = exports.sisccTheme = function sisccTheme(_ref) {
|
|
|
24
28
|
outlineColor: outerPalette.highlight1 || innerPalette.highlight1
|
|
25
29
|
};
|
|
26
30
|
|
|
27
|
-
var buttonBaseFocus = {
|
|
31
|
+
var buttonBaseFocus = isA11y && {
|
|
28
32
|
borderColor: outerPalette.highlight1 || innerPalette.highlight1,
|
|
29
|
-
'
|
|
33
|
+
'&:focus': {
|
|
30
34
|
outlineColor: outerPalette.highlight1 || innerPalette.highlight1,
|
|
31
35
|
outlineWidth: 1,
|
|
32
36
|
outlineStyle: 'auto'
|
|
@@ -47,7 +51,11 @@ var sisccTheme = exports.sisccTheme = function sisccTheme(_ref) {
|
|
|
47
51
|
disableRipple: true
|
|
48
52
|
},
|
|
49
53
|
styleOverrides: {
|
|
50
|
-
root:
|
|
54
|
+
root: _extends({
|
|
55
|
+
'&:focus': {
|
|
56
|
+
outline: 'none'
|
|
57
|
+
}
|
|
58
|
+
}, buttonBaseFocus)
|
|
51
59
|
}
|
|
52
60
|
},
|
|
53
61
|
MuiUseMediaQuery: {
|
|
@@ -82,7 +90,7 @@ var sisccTheme = exports.sisccTheme = function sisccTheme(_ref) {
|
|
|
82
90
|
MuiAccordion: {
|
|
83
91
|
styleOverrides: {
|
|
84
92
|
root: {
|
|
85
|
-
'
|
|
93
|
+
'&.Mui-expanded': {
|
|
86
94
|
margin: 0
|
|
87
95
|
}
|
|
88
96
|
}
|
|
@@ -91,7 +99,10 @@ var sisccTheme = exports.sisccTheme = function sisccTheme(_ref) {
|
|
|
91
99
|
MuiButton: {
|
|
92
100
|
styleOverrides: {
|
|
93
101
|
root: {
|
|
94
|
-
textTransform: 'none'
|
|
102
|
+
textTransform: 'none',
|
|
103
|
+
'&:focus': {
|
|
104
|
+
outline: 'none'
|
|
105
|
+
}
|
|
95
106
|
},
|
|
96
107
|
textPrimary: {
|
|
97
108
|
'&:hover': {
|
|
@@ -128,6 +139,9 @@ var sisccTheme = exports.sisccTheme = function sisccTheme(_ref) {
|
|
|
128
139
|
}
|
|
129
140
|
},
|
|
130
141
|
MuiLink: {
|
|
142
|
+
defaultProps: {
|
|
143
|
+
underline: 'none'
|
|
144
|
+
},
|
|
131
145
|
styleOverrides: {
|
|
132
146
|
root: {
|
|
133
147
|
color: outerPalette.primaryMain || innerPalette.primaryMain,
|
|
@@ -137,7 +151,7 @@ var sisccTheme = exports.sisccTheme = function sisccTheme(_ref) {
|
|
|
137
151
|
'&.Mui-focused': isA11y && focus
|
|
138
152
|
},
|
|
139
153
|
button: {
|
|
140
|
-
'
|
|
154
|
+
'&:focus': isA11y && focus
|
|
141
155
|
}
|
|
142
156
|
}
|
|
143
157
|
},
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @sis-cc/dotstatsuite-visions v12.
|
|
2
|
+
* @sis-cc/dotstatsuite-visions v12.2.0 - https://visions-qa.siscc.org/#o
|
|
3
3
|
* MIT Licensed
|
|
4
4
|
*/
|
|
5
5
|
(function webpackUniversalModuleDefinition(root, factory) {
|
|
@@ -9187,7 +9187,7 @@ if (true) {
|
|
|
9187
9187
|
/* 166 */
|
|
9188
9188
|
/***/ (function(module) {
|
|
9189
9189
|
|
|
9190
|
-
module.exports = {"name":"@sis-cc/dotstatsuite-visions","version":"12.
|
|
9190
|
+
module.exports = {"name":"@sis-cc/dotstatsuite-visions","version":"12.2.0","description":"Library of visual components","author":"OECD","homepage":"https://visions-qa.siscc.org/#o","license":"MIT","repository":"https://gitlab.com/sis-cc/.stat-suite/dotstatsuite-visions","main":"lib/index.js","module":"es/index.js","engines":{"node":">=14"},"files":["css","es","lib","umd"],"scripts":{"build":"nwb build-react-component --copy-files --no-demo && node scripts/doc && nwb build-demo","build:dev":"nwb build-react-component --copy-files --no-demo","clean":"nwb clean-module && nwb clean-demo","prepublishOnly":"npm run build","start":"nwb serve-react-demo","test":"jest","test:watch":"jest --watch --no-cache","lint":"eslint src/ --color","precommit":"lint-staged"},"dependencies":{"@emotion/react":"^11.13.0","@emotion/styled":"^11.13.0","@hello-pangea/dnd":"^16.6.0","@mui/icons-material":"^5.16.5","@mui/material":"^5.16.5","@mui/styles":"^5.16.5","@react-hook/size":"^2.1.1","classnames":"^2.2.6","cross-env":"^7.0.3","date-fns":"^1.30.1","isemail":"^3.2.0","numeral":"^2.0.6","prop-types":"^15.7.2","ramda":"^0.27.0","react-draggable":"^4.4.5","react-error-boundary":"^4.0.10","react-virtualized":"^9.21.2"},"peerDependencies":{"@mui/icons-material":"^5.16.5","@mui/material":"^5.16.5","react":"^18","react-dom":"^18"},"devDependencies":{"@babel/eslint-parser":"^7.5.4","@babel/plugin-syntax-dynamic-import":"^7.2.0","@cfaester/enzyme-adapter-react-18":"^0.7.0","@mui/icons-material":"^5.16.5","@mui/material":"^5.16.5","@testing-library/jest-dom":"^5.16.5","@testing-library/react":"^14.0.0","babel-jest":"^24.8.0","babel-preset-react-app":"^9.0.0","dox":"^0.9.0","eslint":"^8.39.0","eslint-plugin-import":"^2.27.5","eslint-plugin-jsx-a11y":"^6.7.1","eslint-plugin-prettier":"^4.2.1","eslint-plugin-react":"^7.32.2","eslint-plugin-react-hooks":"^4.6.0","husky":"^2.7.0","identity-obj-proxy":"^3.0.0","jest":"^24.8.0","jss":"^10.10.0","jss-rtl":"^0.2.3","lint-staged":"^8.2.1","mutationobserver-shim":"^0.3.7","nwb":"0.23.0","prettier":"^2.8.8","pretty-quick":"^3.1.3","react":"^18","react-a11y":"^1.1.0","react-dom":"^18","react-helmet":"^5.2.1","react-scrollable-anchor":"^0.6.1","react-syntax-highlighter":"^10.2.1","sanitize-html":"2.7.0","webpack":"^5.68.0","webpack-cli":"^4.9.2","webpack-dev-server":"^4.7.4"},"jest":{"verbose":true,"coverageDirectory":"coverage","collectCoverageFrom":["src/**/*.{js,jsx,ts,tsx}","!src/ScopeList/*.{js,jsx,ts,tsx}","!src/**/*.d.ts"],"setupFilesAfterEnv":["<rootDir>/tests/setup.js"],"testMatch":["**/tests/**/*.{spec,test}.{js,jsx,ts,tsx}","!**/tests/ScopeList.test.js"],"testEnvironment":"jsdom","transform":{"^.+\\.(js|jsx|ts|tsx)$":"<rootDir>/node_modules/babel-jest"},"transformIgnorePatterns":["[/\\\\]node_modules[/\\\\].+\\.(js|jsx|ts|tsx)$","^.+\\.module\\.(css|sass|scss)$"],"modulePaths":[],"moduleNameMapper":{"^react-native$":"react-native-web","^.+\\.module\\.(css|sass|scss)$":"identity-obj-proxy","\\.(jpg|jpeg|png)$":"identity-obj-proxy"},"moduleFileExtensions":["web.js","js","web.ts","ts","web.tsx","tsx","json","web.jsx","jsx","node"]},"babel":{"presets":["react-app"],"plugins":["@babel/plugin-syntax-dynamic-import"]},"eslintConfig":{"env":{"browser":true,"jest":true,"node":true,"es6":true},"extends":["eslint:recommended","plugin:react/recommended","plugin:jsx-a11y/recommended"],"parser":"@babel/eslint-parser","parserOptions":{"babelOptions":{"presets":[["babel-preset-react-app",false],"babel-preset-react-app/test"]},"ecmaFeatures":{"experimentalObjectRestSpread":true,"jsx":true},"sourceType":"module"},"plugins":["prettier","react","import","react-hooks","jsx-a11y"],"rules":{"no-console":"warn","no-unused-vars":"error","react/display-name":"off","react-hooks/rules-of-hooks":"error","react-hooks/exhaustive-deps":"warn","no-use-before-define":"error"}},"browserslist":{"production":[">0.2%","not dead","not op_mini all"],"development":["last 1 chrome version","last 1 firefox version","last 1 safari version"]},"husky":{"hooks":{"pre-commit":"lint-staged"}},"lint-staged":{"src/**/*.{js,css}":["prettier --write","git add","yarn lint"]},"prettier":{"endOfLine":"lf","useTabs":false,"printWidth":100,"tabWidth":2,"singleQuote":true,"trailingComma":"all","bracketSameLine":false,"bracketSpacing":true,"parser":"babel","semi":true,"arrowParens":"avoid"}};
|
|
9191
9191
|
|
|
9192
9192
|
/***/ }),
|
|
9193
9193
|
/* 167 */
|
|
@@ -52137,6 +52137,7 @@ var Item_Item = function Item(_ref) {
|
|
|
52137
52137
|
e.stopPropagation();
|
|
52138
52138
|
},
|
|
52139
52139
|
tabIndex: 0,
|
|
52140
|
+
underline: 'none',
|
|
52140
52141
|
style: { display: 'list-item' }
|
|
52141
52142
|
},
|
|
52142
52143
|
labelAccessor(subtopic, parentId)
|
|
@@ -56128,6 +56129,8 @@ var Info = __webpack_require__(227);
|
|
|
56128
56129
|
var Info_default = /*#__PURE__*/__webpack_require__.n(Info);
|
|
56129
56130
|
|
|
56130
56131
|
// CONCATENATED MODULE: ./src/theme.js
|
|
56132
|
+
var theme_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; };
|
|
56133
|
+
|
|
56131
56134
|
var innerPalette = {
|
|
56132
56135
|
highlight1: '#f7a42c',
|
|
56133
56136
|
highlight2: '#8CC841',
|
|
@@ -56143,7 +56146,8 @@ var innerPalette = {
|
|
|
56143
56146
|
|
|
56144
56147
|
var sisccTheme = function sisccTheme(_ref) {
|
|
56145
56148
|
var rtl = _ref.rtl,
|
|
56146
|
-
isA11y = _ref.isA11y,
|
|
56149
|
+
_ref$isA11y = _ref.isA11y,
|
|
56150
|
+
isA11y = _ref$isA11y === undefined ? false : _ref$isA11y,
|
|
56147
56151
|
_ref$outerPalette = _ref.outerPalette,
|
|
56148
56152
|
outerPalette = _ref$outerPalette === undefined ? {} : _ref$outerPalette;
|
|
56149
56153
|
|
|
@@ -56151,9 +56155,9 @@ var sisccTheme = function sisccTheme(_ref) {
|
|
|
56151
56155
|
outlineColor: outerPalette.highlight1 || innerPalette.highlight1
|
|
56152
56156
|
};
|
|
56153
56157
|
|
|
56154
|
-
var buttonBaseFocus = {
|
|
56158
|
+
var buttonBaseFocus = isA11y && {
|
|
56155
56159
|
borderColor: outerPalette.highlight1 || innerPalette.highlight1,
|
|
56156
|
-
'
|
|
56160
|
+
'&:focus': {
|
|
56157
56161
|
outlineColor: outerPalette.highlight1 || innerPalette.highlight1,
|
|
56158
56162
|
outlineWidth: 1,
|
|
56159
56163
|
outlineStyle: 'auto'
|
|
@@ -56174,7 +56178,11 @@ var sisccTheme = function sisccTheme(_ref) {
|
|
|
56174
56178
|
disableRipple: true
|
|
56175
56179
|
},
|
|
56176
56180
|
styleOverrides: {
|
|
56177
|
-
root:
|
|
56181
|
+
root: theme_extends({
|
|
56182
|
+
'&:focus': {
|
|
56183
|
+
outline: 'none'
|
|
56184
|
+
}
|
|
56185
|
+
}, buttonBaseFocus)
|
|
56178
56186
|
}
|
|
56179
56187
|
},
|
|
56180
56188
|
MuiUseMediaQuery: {
|
|
@@ -56209,7 +56217,7 @@ var sisccTheme = function sisccTheme(_ref) {
|
|
|
56209
56217
|
MuiAccordion: {
|
|
56210
56218
|
styleOverrides: {
|
|
56211
56219
|
root: {
|
|
56212
|
-
'
|
|
56220
|
+
'&.Mui-expanded': {
|
|
56213
56221
|
margin: 0
|
|
56214
56222
|
}
|
|
56215
56223
|
}
|
|
@@ -56218,7 +56226,10 @@ var sisccTheme = function sisccTheme(_ref) {
|
|
|
56218
56226
|
MuiButton: {
|
|
56219
56227
|
styleOverrides: {
|
|
56220
56228
|
root: {
|
|
56221
|
-
textTransform: 'none'
|
|
56229
|
+
textTransform: 'none',
|
|
56230
|
+
'&:focus': {
|
|
56231
|
+
outline: 'none'
|
|
56232
|
+
}
|
|
56222
56233
|
},
|
|
56223
56234
|
textPrimary: {
|
|
56224
56235
|
'&:hover': {
|
|
@@ -56255,6 +56266,9 @@ var sisccTheme = function sisccTheme(_ref) {
|
|
|
56255
56266
|
}
|
|
56256
56267
|
},
|
|
56257
56268
|
MuiLink: {
|
|
56269
|
+
defaultProps: {
|
|
56270
|
+
underline: 'none'
|
|
56271
|
+
},
|
|
56258
56272
|
styleOverrides: {
|
|
56259
56273
|
root: {
|
|
56260
56274
|
color: outerPalette.primaryMain || innerPalette.primaryMain,
|
|
@@ -56264,7 +56278,7 @@ var sisccTheme = function sisccTheme(_ref) {
|
|
|
56264
56278
|
'&.Mui-focused': isA11y && focus
|
|
56265
56279
|
},
|
|
56266
56280
|
button: {
|
|
56267
|
-
'
|
|
56281
|
+
'&:focus': isA11y && focus
|
|
56268
56282
|
}
|
|
56269
56283
|
}
|
|
56270
56284
|
},
|
|
@@ -58804,7 +58818,7 @@ var InputNumber_useStyles = makeStyles(function (theme) {
|
|
|
58804
58818
|
margin: '0px 10px 0 10px'
|
|
58805
58819
|
},
|
|
58806
58820
|
input: {
|
|
58807
|
-
padding: '4px
|
|
58821
|
+
padding: '4px 4px',
|
|
58808
58822
|
height: 27,
|
|
58809
58823
|
'&[type=number]::-webkit-inner-spin-button, &[type=number]::-webkit-outer-spin-button': {
|
|
58810
58824
|
'-webkit-appearance': 'none',
|
|
@@ -63725,7 +63739,7 @@ var header_Header = function Header(_ref) {
|
|
|
63725
63739
|
var theme = styles_useTheme_useTheme();
|
|
63726
63740
|
var isRtl = utils_getIsRtl(theme);
|
|
63727
63741
|
|
|
63728
|
-
var stickyLabelPosition = es_last(subHeadCellsWidth) +
|
|
63742
|
+
var stickyLabelPosition = es_last(subHeadCellsWidth) + 'px + 30px + ' + theme.spacing(1);
|
|
63729
63743
|
|
|
63730
63744
|
if (compose(es_anyPass([es_isNil, es_isEmpty]), es_path([0, 'data']))(headerData)) return null;
|
|
63731
63745
|
return timesIndexed(function (index) {
|
|
@@ -80724,27 +80738,51 @@ function withSpotlight_objectWithoutProperties(obj, keys) { var target = {}; for
|
|
|
80724
80738
|
|
|
80725
80739
|
var withSpotlight_spotlightFilter = function spotlightFilter(term) {
|
|
80726
80740
|
var labelRenderer = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : es_prop('label');
|
|
80741
|
+
var displayChildren = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
80727
80742
|
return function (items) {
|
|
80728
80743
|
if (es_isEmpty(term) || es_isNil(term)) {
|
|
80729
80744
|
return items;
|
|
80730
80745
|
}
|
|
80731
80746
|
|
|
80732
80747
|
var groupedItemsByParentId = es_groupBy(es_propOr('#ROOT', 'parentId'), items);
|
|
80733
|
-
|
|
80734
|
-
|
|
80748
|
+
|
|
80749
|
+
var findParents = function findParents(item) {
|
|
80750
|
+
var acc = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
80751
|
+
|
|
80752
|
+
var parentId = es_prop('parentId', item);
|
|
80753
|
+
if (parentId && parentId !== '#ROOT') {
|
|
80754
|
+
var parent = es_find(es_propEq('id', parentId), items);
|
|
80755
|
+
if (parent) {
|
|
80756
|
+
return findParents(parent, [parent].concat(acc));
|
|
80757
|
+
}
|
|
80758
|
+
}
|
|
80759
|
+
return acc;
|
|
80760
|
+
};
|
|
80761
|
+
|
|
80762
|
+
var recurse = function recurse(item) {
|
|
80763
|
+
var isValidItem = es_includes(es_toLower(term), es_toLower(labelRenderer(item)));
|
|
80764
|
+
|
|
80765
|
+
var result = [];
|
|
80766
|
+
|
|
80735
80767
|
if (isValidItem) {
|
|
80736
|
-
|
|
80768
|
+
var parents = findParents(item);
|
|
80769
|
+
result = [].concat(parents, [item]);
|
|
80770
|
+
if (displayChildren) {
|
|
80771
|
+
var children = utils_getDescendants(es_prop('id', item), groupedItemsByParentId);
|
|
80772
|
+
return [].concat(parents, [item], children);
|
|
80773
|
+
}
|
|
80737
80774
|
}
|
|
80738
80775
|
if (es_has(utils_getHierarchicalId(item), groupedItemsByParentId)) {
|
|
80739
|
-
var
|
|
80740
|
-
|
|
80741
|
-
|
|
80742
|
-
|
|
80776
|
+
var childItems = groupedItemsByParentId[utils_getHierarchicalId(item)] || [];
|
|
80777
|
+
var matchingChildren = es_chain(recurse, childItems);
|
|
80778
|
+
|
|
80779
|
+
// res with any matching children
|
|
80780
|
+
return es_uniq([].concat(result, matchingChildren));
|
|
80743
80781
|
}
|
|
80744
|
-
return
|
|
80745
|
-
}
|
|
80782
|
+
return result;
|
|
80783
|
+
};
|
|
80746
80784
|
|
|
80747
|
-
return recurse
|
|
80785
|
+
return es_uniq(es_chain(recurse, groupedItemsByParentId['#ROOT'] || []));
|
|
80748
80786
|
};
|
|
80749
80787
|
};
|
|
80750
80788
|
|
|
@@ -80753,7 +80791,8 @@ var withSpotlight_withSpotlight = function withSpotlight(Component) {
|
|
|
80753
80791
|
var items = _ref.items,
|
|
80754
80792
|
defaultSpotlight = _ref.defaultSpotlight,
|
|
80755
80793
|
labelRenderer = _ref.labelRenderer,
|
|
80756
|
-
|
|
80794
|
+
displayChildren = _ref.displayChildren,
|
|
80795
|
+
rest = withSpotlight_objectWithoutProperties(_ref, ['items', 'defaultSpotlight', 'labelRenderer', 'displayChildren']);
|
|
80757
80796
|
|
|
80758
80797
|
var _useState = Object(react["useState"])({ term: '' }),
|
|
80759
80798
|
term = _useState[0].term,
|
|
@@ -80766,7 +80805,7 @@ var withSpotlight_withSpotlight = function withSpotlight(Component) {
|
|
|
80766
80805
|
}, [defaultSpotlight]);
|
|
80767
80806
|
|
|
80768
80807
|
var filteredItems = Object(react["useMemo"])(function () {
|
|
80769
|
-
return withSpotlight_spotlightFilter(term, labelRenderer)(items);
|
|
80808
|
+
return withSpotlight_spotlightFilter(term, labelRenderer, displayChildren)(items);
|
|
80770
80809
|
}, [term, items]);
|
|
80771
80810
|
|
|
80772
80811
|
return react_default.a.createElement(Component, withSpotlight_extends({}, rest, {
|