@sis-cc/dotstatsuite-visions 10.5.2 → 10.6.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.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @sis-cc/dotstatsuite-visions v10.5.2 - https://visions-qa.siscc.org/#o
2
+ * @sis-cc/dotstatsuite-visions v10.6.0 - https://visions-qa.siscc.org/#o
3
3
  * MIT Licensed
4
4
  */
5
5
  (function webpackUniversalModuleDefinition(root, factory) {
@@ -1742,7 +1742,8 @@ function debounce(func) {
1742
1742
  }
1743
1743
 
1744
1744
  /***/ }),
1745
- /* 37 */
1745
+ /* 37 */,
1746
+ /* 38 */
1746
1747
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1747
1748
 
1748
1749
  "use strict";
@@ -1756,7 +1757,7 @@ function _inheritsLoose(subClass, superClass) {
1756
1757
  }
1757
1758
 
1758
1759
  /***/ }),
1759
- /* 38 */
1760
+ /* 39 */
1760
1761
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
1761
1762
 
1762
1763
  "use strict";
@@ -1839,7 +1840,6 @@ function formatMs(milliseconds) {
1839
1840
  });
1840
1841
 
1841
1842
  /***/ }),
1842
- /* 39 */,
1843
1843
  /* 40 */,
1844
1844
  /* 41 */
1845
1845
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
@@ -2798,7 +2798,7 @@ function createSpacing() {
2798
2798
  return spacing;
2799
2799
  }
2800
2800
  // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/transitions.js
2801
- var transitions = __webpack_require__(38);
2801
+ var transitions = __webpack_require__(39);
2802
2802
 
2803
2803
  // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/zIndex.js
2804
2804
  var zIndex = __webpack_require__(92);
@@ -6699,7 +6699,7 @@ function removeClassName(el
6699
6699
  /* 121 */
6700
6700
  /***/ (function(module) {
6701
6701
 
6702
- module.exports = {"name":"@sis-cc/dotstatsuite-visions","version":"10.5.2","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":{"@react-hook/size":"^2.1.1","classnames":"^2.2.6","date-fns":"^1.30.1","isemail":"^3.2.0","numeral":"^2.0.6","prop-types":"^15.7.2","ramda":"^0.27.0","react-beautiful-dnd":"^13.0.0","react-draggable":"^4.4.5","react-error-boundary":"^4.0.10","react-virtualized":"^9.21.2"},"peerDependencies":{"@material-ui/core":"^4","@material-ui/icons":"^4","@sis-cc/dotstatsuite-sdmxjs":"^8.x","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","@material-ui/core":"^4","@material-ui/icons":"^4","@sis-cc/dotstatsuite-sdmxjs":"*","@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"}};
6702
+ module.exports = {"name":"@sis-cc/dotstatsuite-visions","version":"10.6.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":{"@react-hook/size":"^2.1.1","classnames":"^2.2.6","date-fns":"^1.30.1","isemail":"^3.2.0","numeral":"^2.0.6","prop-types":"^15.7.2","ramda":"^0.27.0","react-beautiful-dnd":"^13.0.0","react-draggable":"^4.4.5","react-error-boundary":"^4.0.10","react-virtualized":"^9.21.2"},"peerDependencies":{"@material-ui/core":"^4","@material-ui/icons":"^4","@sis-cc/dotstatsuite-sdmxjs":"^8.x","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","@material-ui/core":"^4","@material-ui/icons":"^4","@sis-cc/dotstatsuite-sdmxjs":"*","@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"}};
6703
6703
 
6704
6704
  /***/ }),
6705
6705
  /* 122 */
@@ -25775,7 +25775,7 @@ var objectWithoutPropertiesLoose = __webpack_require__(27);
25775
25775
  var assertThisInitialized = __webpack_require__(73);
25776
25776
 
25777
25777
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
25778
- var inheritsLoose = __webpack_require__(37);
25778
+ var inheritsLoose = __webpack_require__(38);
25779
25779
 
25780
25780
  // CONCATENATED MODULE: ./node_modules/react-transition-group/esm/TransitionGroupContext.js
25781
25781
 
@@ -42541,7 +42541,7 @@ function useMediaQuery(queryInput) {
42541
42541
  return match;
42542
42542
  }
42543
42543
  // EXTERNAL MODULE: ./node_modules/@material-ui/core/esm/styles/transitions.js
42544
- var transitions = __webpack_require__(38);
42544
+ var transitions = __webpack_require__(39);
42545
42545
 
42546
42546
  // CONCATENATED MODULE: ./node_modules/@material-ui/core/esm/Collapse/Collapse.js
42547
42547
 
@@ -70543,6 +70543,7 @@ var VirtualizedTree_Item_Item = function Item(_ref) {
70543
70543
  description = _ref$description === undefined ? '' : _ref$description,
70544
70544
  isSelected = _ref.isSelected,
70545
70545
  isDisabled = _ref.isDisabled,
70546
+ isGreyed = _ref.isGreyed,
70546
70547
  changeList = _ref.changeList,
70547
70548
  ariaLabel = _ref.ariaLabel,
70548
70549
  NavigateIcon = _ref.NavigateIcon,
@@ -70550,7 +70551,6 @@ var VirtualizedTree_Item_Item = function Item(_ref) {
70550
70551
  hasChildrenOnLevel = _ref.hasChildrenOnLevel,
70551
70552
  count = _ref.count,
70552
70553
  svgPath = _ref.svgPath,
70553
- testId = _ref.testId,
70554
70554
  style = _ref.style,
70555
70555
  isRtl = _ref.isRtl,
70556
70556
  accessibility = _ref.accessibility,
@@ -70596,6 +70596,7 @@ var VirtualizedTree_Item_Item = function Item(_ref) {
70596
70596
  react_default.a.createElement(NavigateIcon, null)
70597
70597
  ),
70598
70598
  react_default.a.createElement(esm_ListItemText_ListItemText, VirtualizedTree_Item_extends({
70599
+ 'data-testid': 'value_' + id,
70599
70600
  tabIndex: 0,
70600
70601
  'aria-label': isDisabled ? es_propOr('', 'disableItemLabel')(labels) + ' ' + label : label,
70601
70602
  'aria-pressed': isSelected,
@@ -70622,13 +70623,13 @@ var VirtualizedTree_Item_Item = function Item(_ref) {
70622
70623
  color: 'primary',
70623
70624
  className: classnames_default()(classes.labelIcon, (_cx3 = {}, _cx3[classes.disabledLabel] = isDisabled, _cx3))
70624
70625
  },
70625
- isSelected && es_not(isDisabled) ? react_default.a.createElement(CheckBoxOutlined_default.a, null) : react_default.a.createElement(CheckBoxOutlineBlankOutlined_default.a, null)
70626
+ isSelected ? react_default.a.createElement(CheckBoxOutlined_default.a, null) : react_default.a.createElement(CheckBoxOutlineBlankOutlined_default.a, null)
70626
70627
  ),
70627
70628
  svgPath && react_default.a.createElement(
70628
70629
  SvgIcon["a" /* default */],
70629
70630
  {
70630
70631
  color: 'primary',
70631
- className: classnames_default()(classes.labelIcon, (_cx4 = {}, _cx4[classes.disabledLabel] = isDisabled, _cx4))
70632
+ className: classnames_default()(classes.labelIcon, (_cx4 = {}, _cx4[classes.disabledLabel] = isGreyed || isDisabled, _cx4))
70632
70633
  },
70633
70634
  react_default.a.createElement('path', { d: svgPath })
70634
70635
  ),
@@ -70655,10 +70656,9 @@ var VirtualizedTree_Item_Item = function Item(_ref) {
70655
70656
  react_default.a.createElement(
70656
70657
  esm_Typography_Typography,
70657
70658
  {
70658
- 'data-testid': testId + '_value_' + id,
70659
70659
  color: 'inherit',
70660
70660
  variant: 'body2',
70661
- className: classnames_default()(classes.label, (_cx5 = {}, _cx5[classes.disabledLabel] = isDisabled, _cx5[classes.tooltipNotice] = !es_isEmpty(description), _cx5))
70661
+ className: classnames_default()(classes.label, (_cx5 = {}, _cx5[classes.disabledLabel] = isGreyed || isDisabled, _cx5[classes.tooltipNotice] = !es_isEmpty(description), _cx5))
70662
70662
  },
70663
70663
  label
70664
70664
  )
@@ -70694,7 +70694,6 @@ VirtualizedTree_Item_Item.propTypes = {
70694
70694
  svgPath: prop_types_default.a.string,
70695
70695
  style: prop_types_default.a.object,
70696
70696
  isRtl: prop_types_default.a.bool,
70697
- testId: prop_types_default.a.string,
70698
70697
  accessibility: prop_types_default.a.bool,
70699
70698
  index: prop_types_default.a.number,
70700
70699
  labelRenderer: prop_types_default.a.func,
@@ -70702,7 +70701,8 @@ VirtualizedTree_Item_Item.propTypes = {
70702
70701
  hierarchicalId: prop_types_default.a.string,
70703
70702
  labels: prop_types_default.a.object,
70704
70703
  depth: prop_types_default.a.number,
70705
- eventsCallbacks: prop_types_default.a.func
70704
+ eventsCallbacks: prop_types_default.a.func,
70705
+ isGreyed: prop_types_default.a.bool
70706
70706
  };
70707
70707
 
70708
70708
  /* harmony default export */ var VirtualizedTree_Item = (VirtualizedTree_Item_Item);
@@ -70858,6 +70858,157 @@ var ScopeList_styles_useStyles = styles_makeStyles(function (theme) {
70858
70858
  }
70859
70859
  };
70860
70860
  });
70861
+ // CONCATENATED MODULE: ./src/VirtualizedTree/utils.js
70862
+
70863
+
70864
+ var utils_getHierarchicalId = function getHierarchicalId(item) {
70865
+ return es_prop('hierarchicalId', item) || es_prop('id', item);
70866
+ };
70867
+
70868
+ var utils_getDescendants = function getDescendants(id, groupedItems) {
70869
+ var reccurse = function reccurse(_id) {
70870
+ var children = es_propOr([], _id, groupedItems);
70871
+ return pipe(es_map(function (item) {
70872
+ var __id = utils_getHierarchicalId(item);
70873
+ var descendants = reccurse(__id);
70874
+ return es_prepend(item, descendants);
70875
+ }), es_unnest)(children);
70876
+ };
70877
+
70878
+ return reccurse(id);
70879
+ };
70880
+
70881
+ var utils_isItemSelected = function isItemSelected(selectIds) {
70882
+ return function (item) {
70883
+ if (!es_isEmpty(selectIds) && es_has(utils_getHierarchicalId(item), selectIds)) {
70884
+ return !item.isSelected;
70885
+ }
70886
+ return !!item.isSelected;
70887
+ };
70888
+ };
70889
+
70890
+ var utils_getDepth = function getDepth(indexedItems) {
70891
+ return function (item) {
70892
+ if (es_isNil(item.parentId)) {
70893
+ return 0;
70894
+ }
70895
+ var parent = es_prop(item.parentId, indexedItems);
70896
+ return getDepth(indexedItems)(parent) + 1;
70897
+ };
70898
+ };
70899
+
70900
+ var utils_getDuplicates = function getDuplicates(items, indexedItems) {
70901
+ var itemsIds = es_pluck('id', items);
70902
+ var grouped = pipe(es_values, es_groupBy(es_prop('id')))(indexedItems);
70903
+ return pipe(es_props(itemsIds), es_unnest)(grouped);
70904
+ };
70905
+
70906
+ var utils_getDeprecatedIds = function getDeprecatedIds(ids, items, selectedIds) {
70907
+ var groupedItemsByParentId = items.groupedItemsByParentId,
70908
+ indexedItemsById = items.indexedItemsById;
70909
+
70910
+ var _ids = ids;
70911
+ var reccurse = function reccurse(scopeIds) {
70912
+ var scopeItems = es_props(scopeIds, indexedItemsById);
70913
+ var grouped = es_groupBy(es_propOr('#ROOT', 'parentId'), scopeItems);
70914
+ var refined = es_omit(es_append('#ROOT', _ids), grouped);
70915
+
70916
+ var deprecatedParents = es_reduce(function (acc, id) {
70917
+ var _item = es_prop(id, indexedItemsById);
70918
+ if (!utils_isItemSelected(selectedIds)(_item)) {
70919
+ return acc;
70920
+ }
70921
+ var _itemsIds = es_has('hierarchicalId', _item) ? pipe(es_values, es_filter(es_propEq('id', _item.id)), es_map(utils_getHierarchicalId))(indexedItemsById) : [id];
70922
+
70923
+ if (es_propOr(true, 'isEnabled', _item)) {
70924
+ return acc;
70925
+ }
70926
+ var children = pipe(es_props(_itemsIds), es_unnest)(groupedItemsByParentId);
70927
+ var selectedChild = es_find(function (child) {
70928
+ return !es_includes(utils_getHierarchicalId(child), _ids) && utils_isItemSelected(selectedIds)(child);
70929
+ }, children);
70930
+ if (es_isNil(selectedChild)) {
70931
+ return es_concat(acc, _itemsIds);
70932
+ }
70933
+ return acc;
70934
+ }, [], es_keys(refined));
70935
+
70936
+ if (!es_isEmpty(deprecatedParents)) {
70937
+ _ids = es_concat(_ids, deprecatedParents);
70938
+ var deprecatedAncestors = reccurse(deprecatedParents);
70939
+ return es_concat(deprecatedParents, deprecatedAncestors);
70940
+ }
70941
+
70942
+ return deprecatedParents;
70943
+ };
70944
+
70945
+ return reccurse(ids);
70946
+ };
70947
+
70948
+ var utils_getSingleDisableAccessor = function getSingleDisableAccessor(groupedItems, disableAccessor) {
70949
+ // items => total list
70950
+ return function (item, selectedIds) {
70951
+ if (!utils_isItemSelected(selectedIds)(item) && disableAccessor(item)) {
70952
+ var descendants = utils_getDescendants(utils_getHierarchicalId(item), groupedItems);
70953
+ var validDescendant = es_find(utils_isItemSelected(selectedIds), descendants);
70954
+ return es_isNil(validDescendant);
70955
+ }
70956
+ return false;
70957
+ };
70958
+ };
70959
+
70960
+ var utils_getHierDisableAccessor = function getHierDisableAccessor(groupedItems, spotlightedGroupedItems, disableAccessor) {
70961
+ var accessor = function accessor(item, selectedIds) {
70962
+ if (!utils_isItemSelected(selectedIds)(item) && disableAccessor(item)) {
70963
+ var spotlightedDescendants = utils_getDescendants(utils_getHierarchicalId(item), spotlightedGroupedItems);
70964
+ var validSpotlightedDescendant = es_find(function (_item) {
70965
+ return !accessor(_item, spotlightedGroupedItems);
70966
+ }, spotlightedDescendants);
70967
+ if (es_isNil(validSpotlightedDescendant)) {
70968
+ var descendants = utils_getDescendants(utils_getHierarchicalId(item), groupedItems);
70969
+ var validDescendant = es_find(utils_isItemSelected(selectedIds), descendants);
70970
+ return es_isNil(validDescendant);
70971
+ }
70972
+ }
70973
+ return false;
70974
+ };
70975
+ return accessor;
70976
+ };
70977
+
70978
+ var getScopeGetters = {
70979
+ all: function all(items) {
70980
+ return function () {
70981
+ return es_reject(es_prop('isDisabled'), es_values(items.indexedItemsById));
70982
+ };
70983
+ },
70984
+ single: function single() {
70985
+ return function (item) {
70986
+ return [item];
70987
+ };
70988
+ },
70989
+ children: function children(items) {
70990
+ return function (item) {
70991
+ var childItems = es_propOr([], utils_getHierarchicalId(item), items.groupedItemsByParentId);
70992
+ return es_reject(es_prop('isDisabled'), es_prepend(item, childItems));
70993
+ };
70994
+ },
70995
+ branch: function branch(items) {
70996
+ return function (item) {
70997
+ var descendants = utils_getDescendants(utils_getHierarchicalId(item), items.groupedItemsByParentId);
70998
+ var res = es_reject(es_prop('isDisabled'), es_prepend(item, descendants));
70999
+ return res;
71000
+ };
71001
+ },
71002
+ level: function level(items) {
71003
+ return function (item) {
71004
+ var indexed = items.indexedItemsById;
71005
+ var depth = utils_getDepth(indexed)(item);
71006
+ return es_filter(function (it) {
71007
+ return !es_prop('isDisabled', it) && utils_getDepth(indexed)(it) === depth;
71008
+ }, es_values(indexed));
71009
+ };
71010
+ }
71011
+ };
70861
71012
  // CONCATENATED MODULE: ./src/VirtualizedTree/VirtualizedTree.js
70862
71013
  var VirtualizedTree_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; };
70863
71014
 
@@ -70874,17 +71025,16 @@ var VirtualizedTree_extends = Object.assign || function (target) { for (var i =
70874
71025
 
70875
71026
 
70876
71027
 
70877
- var getSingleItemScope = function getSingleItemScope(item) {
70878
- return [item];
70879
- };
70880
71028
 
70881
- var VirtualizedTree_getHierarchicalId = function getHierarchicalId(item) {
70882
- return es_prop('hierarchicalId', item) || es_prop('id', item);
71029
+ var singleScopeGetter = function singleScopeGetter() {
71030
+ return function (item) {
71031
+ return [item];
71032
+ };
70883
71033
  };
70884
71034
 
70885
71035
  var VirtualizedTree_getDisplayedIds = function getDisplayedIds(items, grouped, expanded) {
70886
71036
  return pipe(es_map(function (item) {
70887
- var hierarchicalId = VirtualizedTree_getHierarchicalId(item);
71037
+ var hierarchicalId = utils_getHierarchicalId(item);
70888
71038
  if (es_has(hierarchicalId, grouped) && es_has(hierarchicalId, expanded)) {
70889
71039
  var children = getDisplayedIds(es_prop(hierarchicalId, grouped), grouped, expanded);
70890
71040
  return es_prepend(hierarchicalId, children);
@@ -70895,29 +71045,22 @@ var VirtualizedTree_getDisplayedIds = function getDisplayedIds(items, grouped, e
70895
71045
 
70896
71046
  var VirtualizedTree_getHasChildrenOnLevel = function getHasChildrenOnLevel(groupedItems) {
70897
71047
  return function (item) {
70898
- if (es_has(VirtualizedTree_getHierarchicalId(item), groupedItems)) {
71048
+ if (es_has(utils_getHierarchicalId(item), groupedItems)) {
70899
71049
  return true;
70900
71050
  }
70901
71051
  return pipe(es_prop(es_propOr('#ROOT', 'parentId', item)), es_find(function (it) {
70902
- return es_has(VirtualizedTree_getHierarchicalId(it), groupedItems);
71052
+ return es_has(utils_getHierarchicalId(it), groupedItems);
70903
71053
  }), es_complement(es_isNil))(groupedItems);
70904
71054
  };
70905
71055
  };
70906
71056
 
70907
- var VirtualizedTree_getDepth = function getDepth(indexedItems) {
70908
- return function (item) {
70909
- if (es_isNil(item.parentId)) {
70910
- return 0;
70911
- }
70912
- var parent = es_prop(item.parentId, indexedItems);
70913
- return getDepth(indexedItems)(parent) + 1;
70914
- };
70915
- };
70916
-
70917
71057
  var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
70918
71058
  var accessibility = props.accessibility,
70919
71059
  changeSelection = props.changeSelection,
70920
- disableAccessor = props.disableAccessor,
71060
+ _props$disableAccesso = props.disableAccessor,
71061
+ disableAccessor = _props$disableAccesso === undefined ? es_always(false) : _props$disableAccesso,
71062
+ _props$isGreyed = props.isGreyed,
71063
+ isGreyed = _props$isGreyed === undefined ? es_always(false) : _props$isGreyed,
70921
71064
  HTMLRenderer = props.HTMLRenderer,
70922
71065
  items = props.items,
70923
71066
  labelRenderer = props.labelRenderer,
@@ -70927,8 +71070,8 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
70927
71070
  collapse = props.collapse,
70928
71071
  _props$maxTreeHeight = props.maxTreeHeight,
70929
71072
  maxTreeHeight = _props$maxTreeHeight === undefined ? 250 : _props$maxTreeHeight,
70930
- _props$getItemScope = props.getItemScope,
70931
- getItemScope = _props$getItemScope === undefined ? getSingleItemScope : _props$getItemScope,
71073
+ _props$scopeGetter = props.scopeGetter,
71074
+ scopeGetter = _props$scopeGetter === undefined ? singleScopeGetter : _props$scopeGetter,
70932
71075
  _props$treeHeight = props.treeHeight,
70933
71076
  treeHeight = _props$treeHeight === undefined ? 0 : _props$treeHeight;
70934
71077
 
@@ -70955,21 +71098,41 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
70955
71098
  setLastItemId = _useState5[1];
70956
71099
 
70957
71100
  var _useMemo = Object(react["useMemo"])(function () {
70958
- var indexedItemsById = es_indexBy(VirtualizedTree_getHierarchicalId, items);
70959
- var groupedItemsByParentId = es_groupBy(es_propOr('#ROOT', 'parentId'), items);
71101
+ var refinedItems = es_map(function (item) {
71102
+ return VirtualizedTree_extends({}, item, {
71103
+ isSelected: utils_isItemSelected(selectIds)(item),
71104
+ isGreyed: es_is(Function, isGreyed) ? isGreyed(item) : false,
71105
+ isDisabled: es_is(Function, disableAccessor) ? disableAccessor(item, selectIds) : false
71106
+ });
71107
+ }, items);
71108
+ var indexedItemsById = es_indexBy(utils_getHierarchicalId, refinedItems);
71109
+ var groupedItemsByParentId = es_groupBy(es_propOr('#ROOT', 'parentId'), refinedItems);
70960
71110
  return { indexedItemsById: indexedItemsById, groupedItemsByParentId: groupedItemsByParentId };
70961
- }, [items]),
71111
+ }, [items, selectIds]),
70962
71112
  indexedItemsById = _useMemo.indexedItemsById,
70963
71113
  groupedItemsByParentId = _useMemo.groupedItemsByParentId;
70964
71114
 
70965
71115
  var list = Object(react["useMemo"])(function () {
70966
71116
  return VirtualizedTree_getDisplayedIds(es_propOr([], '#ROOT', groupedItemsByParentId), groupedItemsByParentId, expandedIds);
70967
71117
  }, [items, expandedIds]);
71118
+
71119
+ var getItemScope = scopeGetter({ indexedItemsById: indexedItemsById, groupedItemsByParentId: groupedItemsByParentId });
71120
+
71121
+ var isItemSelected = utils_isItemSelected(selectIds);
71122
+
70968
71123
  var multiSelect = function multiSelect(id) {
70969
71124
  var item = es_prop(id, indexedItemsById);
70970
71125
  var ids = pipe(getItemScope, es_filter(function (v) {
70971
71126
  return v.isSelected === item.isSelected;
70972
- }), es_map(VirtualizedTree_getHierarchicalId))(item);
71127
+ }), function (items) {
71128
+ return utils_getDuplicates(items, indexedItemsById);
71129
+ }, es_map(utils_getHierarchicalId))(item);
71130
+
71131
+ if (isItemSelected(item)) {
71132
+ var deprecatedIds = utils_getDeprecatedIds(ids, { indexedItemsById: indexedItemsById, groupedItemsByParentId: groupedItemsByParentId }, selectIds);
71133
+ ids = es_concat(ids, deprecatedIds);
71134
+ }
71135
+
70973
71136
  if (es_has(id, selectIds)) {
70974
71137
  setSelectIds(es_omit(ids, selectIds));
70975
71138
  } else {
@@ -70983,7 +71146,7 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
70983
71146
  return es_props(ids, indexedItemsById);
70984
71147
  }, es_map(getItemScope), es_unnest, es_filter(function (v) {
70985
71148
  return v.isSelected === isSelected;
70986
- }), es_map(VirtualizedTree_getHierarchicalId), es_indexBy(es_identity))(list);
71149
+ }), es_map(utils_getHierarchicalId), es_indexBy(es_identity))(list);
70987
71150
  setShiftIndexes(indexes);
70988
71151
  setSelectIds(_selectIds);
70989
71152
  };
@@ -71003,7 +71166,7 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
71003
71166
  }
71004
71167
  var ids = pipe(getItemScope, es_filter(function (v) {
71005
71168
  return v.isSelected === item.isSelected;
71006
- }), es_map(VirtualizedTree_getHierarchicalId), es_indexBy(es_identity))(item);
71169
+ }), es_map(utils_getHierarchicalId), es_indexBy(es_identity))(item);
71007
71170
  setShiftIndexes(es_append(index, shiftIndexes));
71008
71171
  setSelectIds(ids);
71009
71172
  } else if (es_length(shiftIndexes) === 1 && index === es_head(shiftIndexes)) {
@@ -71073,12 +71236,6 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
71073
71236
  apply();
71074
71237
  }
71075
71238
  };
71076
- var isItemSelected = function isItemSelected(item) {
71077
- if (!es_isEmpty(selectIds) && es_has(VirtualizedTree_getHierarchicalId(item), selectIds)) {
71078
- return !item.isSelected;
71079
- }
71080
- return !!item.isSelected;
71081
- };
71082
71239
  var ref = Object(react["useRef"])();
71083
71240
  var classes = ScopeList_styles_useStyles();
71084
71241
 
@@ -71146,22 +71303,20 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
71146
71303
  var itemId = es_nth(index, list);
71147
71304
  var item = es_prop(itemId, indexedItemsById);
71148
71305
  return react_default.a.createElement(VirtualizedTree_Item, VirtualizedTree_extends({}, item, {
71149
- id: VirtualizedTree_getHierarchicalId(item),
71306
+ id: utils_getHierarchicalId(item),
71150
71307
  label: labelRenderer(item),
71151
- key: VirtualizedTree_getHierarchicalId(item),
71152
- depth: VirtualizedTree_getDepth(indexedItemsById)(item),
71308
+ key: utils_getHierarchicalId(item),
71309
+ depth: utils_getDepth(indexedItemsById)(item),
71153
71310
  hasChild: es_has(itemId, groupedItemsByParentId),
71154
71311
  hasChildrenOnLevel: VirtualizedTree_getHasChildrenOnLevel(groupedItemsByParentId)(item),
71155
71312
  changeList: es_has(itemId, expandedIds) ? function () {
71156
- return collapse(VirtualizedTree_getHierarchicalId(item));
71313
+ return collapse(utils_getHierarchicalId(item));
71157
71314
  } : function () {
71158
- return expand(VirtualizedTree_getHierarchicalId(item));
71315
+ return expand(utils_getHierarchicalId(item));
71159
71316
  },
71160
71317
  NavigateIcon: es_has(itemId, expandedIds) ? ExpandLess_default.a : ExpandMore_default.a,
71161
71318
  isRtl: isRtl,
71162
- isDisabled: es_is(Function, disableAccessor) ? disableAccessor(item) : false,
71163
71319
  eventsCallbacks: eventsCallbacks,
71164
- isSelected: isItemSelected(item),
71165
71320
  HTMLRenderer: HTMLRenderer,
71166
71321
  classes: classes,
71167
71322
  labels: labels,
@@ -71187,9 +71342,7 @@ VirtualizedTree_VirtualizedTree.propTypes = {
71187
71342
  isRtl: prop_types_default.a.bool,
71188
71343
  items: prop_types_default.a.array,
71189
71344
  labels: prop_types_default.a.shape({
71190
- disableItemLabel: prop_types_default.a.string,
71191
- colapseAll: prop_types_default.a.string,
71192
- expandAll: prop_types_default.a.string
71345
+ disableItemLabel: prop_types_default.a.string
71193
71346
  }),
71194
71347
  labelRenderer: prop_types_default.a.func,
71195
71348
  withExpandControl: prop_types_default.a.bool,
@@ -71197,7 +71350,9 @@ VirtualizedTree_VirtualizedTree.propTypes = {
71197
71350
  expandedIds: prop_types_default.a.object,
71198
71351
  expand: prop_types_default.a.func,
71199
71352
  collapse: prop_types_default.a.func,
71200
- treeHeight: prop_types_default.a.number
71353
+ treeHeight: prop_types_default.a.number,
71354
+ isGreyed: prop_types_default.a.func,
71355
+ scopeGetter: prop_types_default.a.func
71201
71356
  };
71202
71357
 
71203
71358
  /* harmony default export */ var src_VirtualizedTree_VirtualizedTree = (VirtualizedTree_VirtualizedTree);
@@ -71366,6 +71521,92 @@ var DialogActions_DialogActions = /*#__PURE__*/react["forwardRef"](function Dial
71366
71521
  var cjs = __webpack_require__(201);
71367
71522
  var cjs_default = /*#__PURE__*/__webpack_require__.n(cjs);
71368
71523
 
71524
+ // CONCATENATED MODULE: ./src/AdvancedFilterDialog/SelectionModeMenu.js
71525
+
71526
+
71527
+
71528
+
71529
+
71530
+
71531
+
71532
+
71533
+
71534
+
71535
+ var SelectionModeMenu_SelectionModeMenu = function SelectionModeMenu(_ref) {
71536
+ var isOpen = _ref.isOpen,
71537
+ onSelect = _ref.onSelect,
71538
+ options = _ref.options,
71539
+ selected = _ref.selected,
71540
+ classes = _ref.classes,
71541
+ isNarrow = _ref.isNarrow,
71542
+ hint = _ref.hint,
71543
+ maxHeight = _ref.maxHeight;
71544
+
71545
+ if (!isOpen) {
71546
+ return null;
71547
+ }
71548
+ return react_default.a.createElement(
71549
+ 'div',
71550
+ { className: isNarrow ? classes.narrowSelectionMenu : classes.selectionMenu },
71551
+ react_default.a.createElement(
71552
+ esm_Card_Card,
71553
+ { style: { maxHeight: maxHeight - 5, overflow: 'auto' } },
71554
+ react_default.a.createElement(
71555
+ esm_CardContent_CardContent,
71556
+ { className: classes.selectModeContainer },
71557
+ es_map(function (_ref2) {
71558
+ var value = _ref2.value,
71559
+ label = _ref2.label,
71560
+ img = _ref2.img;
71561
+ return react_default.a.createElement(
71562
+ src_Button_Button,
71563
+ {
71564
+ className: classes.selectButton,
71565
+ selected: value === selected,
71566
+ key: value,
71567
+ onClick: function onClick() {
71568
+ return onSelect(value);
71569
+ }
71570
+ },
71571
+ react_default.a.createElement(
71572
+ esm_Paper_Paper,
71573
+ { className: classes.selectModeItem, key: value },
71574
+ react_default.a.createElement(
71575
+ esm_Typography_Typography,
71576
+ { variant: 'body2' },
71577
+ label
71578
+ ),
71579
+ !es_isNil(img) && es_is(String, img) && react_default.a.createElement('img', { src: img, alt: value })
71580
+ )
71581
+ );
71582
+ }, options)
71583
+ ),
71584
+ react_default.a.createElement(
71585
+ 'div',
71586
+ { className: classes.hint },
71587
+ react_default.a.createElement(EmojiObjects_default.a, null),
71588
+ react_default.a.createElement(
71589
+ esm_Typography_Typography,
71590
+ { variant: 'body2' },
71591
+ hint
71592
+ )
71593
+ )
71594
+ )
71595
+ );
71596
+ };
71597
+
71598
+ SelectionModeMenu_SelectionModeMenu.propTypes = {
71599
+ classes: prop_types_default.a.object,
71600
+ hint: prop_types_default.a.oneOfType([prop_types_default.a.string, prop_types_default.a.array]),
71601
+ isNarrow: prop_types_default.a.bool,
71602
+ isOpen: prop_types_default.a.bool,
71603
+ onSelect: prop_types_default.a.func,
71604
+ options: prop_types_default.a.array,
71605
+ selected: prop_types_default.a.string,
71606
+ maxHeight: prop_types_default.a.number
71607
+ };
71608
+
71609
+ /* harmony default export */ var AdvancedFilterDialog_SelectionModeMenu = (SelectionModeMenu_SelectionModeMenu);
71369
71610
  // CONCATENATED MODULE: ./node_modules/ramda/es/symmetricDifference.js
71370
71611
 
71371
71612
 
@@ -71421,7 +71662,7 @@ var withExpansionTree_withExpansionTree = function withExpansionTree(Component)
71421
71662
  setItemsIds = _useState2[1];
71422
71663
 
71423
71664
  Object(react["useEffect"])(function () {
71424
- var ids = es_map(VirtualizedTree_getHierarchicalId, items);
71665
+ var ids = es_map(utils_getHierarchicalId, items);
71425
71666
  if (!es_isEmpty(es_symmetricDifference(ids, itemsIds))) setItemsIds(ids);
71426
71667
  }, [items]);
71427
71668
 
@@ -71485,8 +71726,8 @@ var withSpotlight_spotlightFilter = function spotlightFilter(term) {
71485
71726
  if (isValidItem) {
71486
71727
  return true;
71487
71728
  }
71488
- if (es_has(VirtualizedTree_getHierarchicalId(item), groupedItemsByParentId)) {
71489
- var filtered = recurse(es_prop(VirtualizedTree_getHierarchicalId(item), groupedItemsByParentId));
71729
+ if (es_has(utils_getHierarchicalId(item), groupedItemsByParentId)) {
71730
+ var filtered = recurse(es_prop(utils_getHierarchicalId(item), groupedItemsByParentId));
71490
71731
  if (!es_isEmpty(filtered)) {
71491
71732
  return true;
71492
71733
  }
@@ -71520,6 +71761,7 @@ var withSpotlight_withSpotlight = function withSpotlight(Component) {
71520
71761
  }, [term, items]);
71521
71762
 
71522
71763
  return react_default.a.createElement(Component, withSpotlight_extends({}, rest, {
71764
+ allItems: items,
71523
71765
  items: filteredItems,
71524
71766
  labelRenderer: labelRenderer,
71525
71767
  hasSpotlight: es_length(items) >= 8,
@@ -71607,7 +71849,6 @@ function AdvancedFilterDialog_objectWithoutProperties(obj, keys) { var target =
71607
71849
 
71608
71850
 
71609
71851
 
71610
-
71611
71852
 
71612
71853
 
71613
71854
  var AdvancedFilterDialog_PaperComponent = function PaperComponent(props) {
@@ -71720,110 +71961,6 @@ var AdvancedFilterDialog_useStyles = styles_makeStyles(function (theme) {
71720
71961
  };
71721
71962
  });
71722
71963
 
71723
- var AdvancedFilterDialog_getScopeGetters = function getScopeGetters(items, groupedItems, disableAccessor) {
71724
- var indexed = es_indexBy(VirtualizedTree_getHierarchicalId, items);
71725
- return {
71726
- all: function all() {
71727
- return es_reject(disableAccessor, items);
71728
- },
71729
- single: function single(item) {
71730
- return [item];
71731
- },
71732
- children: function children(item) {
71733
- var childItems = es_propOr([], VirtualizedTree_getHierarchicalId(item), groupedItems);
71734
- return es_reject(disableAccessor, es_prepend(item, childItems));
71735
- },
71736
- branch: function branch(item) {
71737
- var reccurse = function reccurse(_item) {
71738
- var childItems = pipe(es_propOr([], VirtualizedTree_getHierarchicalId(_item)), es_map(reccurse), es_unnest)(groupedItems);
71739
-
71740
- return es_prepend(_item, childItems);
71741
- };
71742
- var items = reccurse(item);
71743
- return es_reject(disableAccessor, items);
71744
- },
71745
- level: function level(item) {
71746
- var depth = VirtualizedTree_getDepth(indexed)(item);
71747
- return es_filter(function (it) {
71748
- return !disableAccessor(it) && VirtualizedTree_getDepth(indexed)(it) === depth;
71749
- }, items);
71750
- }
71751
- };
71752
- };
71753
-
71754
- var AdvancedFilterDialog_SelectionModeMenu = function SelectionModeMenu(_ref) {
71755
- var isOpen = _ref.isOpen,
71756
- onSelect = _ref.onSelect,
71757
- options = _ref.options,
71758
- selected = _ref.selected,
71759
- classes = _ref.classes,
71760
- isNarrow = _ref.isNarrow,
71761
- hint = _ref.hint,
71762
- maxHeight = _ref.maxHeight;
71763
-
71764
- if (!isOpen) {
71765
- return null;
71766
- }
71767
- return react_default.a.createElement(
71768
- 'div',
71769
- { className: isNarrow ? classes.narrowSelectionMenu : classes.selectionMenu },
71770
- react_default.a.createElement(
71771
- esm_Card_Card,
71772
- { style: { maxHeight: maxHeight - 5, overflow: 'auto' } },
71773
- react_default.a.createElement(
71774
- esm_CardContent_CardContent,
71775
- { className: classes.selectModeContainer },
71776
- es_map(function (_ref2) {
71777
- var value = _ref2.value,
71778
- label = _ref2.label,
71779
- img = _ref2.img;
71780
- return react_default.a.createElement(
71781
- src_Button_Button,
71782
- {
71783
- className: classes.selectButton,
71784
- selected: value === selected,
71785
- key: value,
71786
- onClick: function onClick() {
71787
- return onSelect(value);
71788
- }
71789
- },
71790
- react_default.a.createElement(
71791
- esm_Paper_Paper,
71792
- { className: classes.selectModeItem, key: value },
71793
- react_default.a.createElement(
71794
- esm_Typography_Typography,
71795
- { variant: 'body2' },
71796
- label
71797
- ),
71798
- !es_isNil(img) && es_is(String, img) && react_default.a.createElement('img', { src: img, alt: value })
71799
- )
71800
- );
71801
- }, options)
71802
- ),
71803
- react_default.a.createElement(
71804
- 'div',
71805
- { className: classes.hint },
71806
- react_default.a.createElement(EmojiObjects_default.a, null),
71807
- react_default.a.createElement(
71808
- esm_Typography_Typography,
71809
- { variant: 'body2' },
71810
- hint
71811
- )
71812
- )
71813
- )
71814
- );
71815
- };
71816
- AdvancedFilterDialog_SelectionModeMenu.propTypes = {
71817
- classes: prop_types_default.a.object,
71818
- hint: prop_types_default.a.oneOfType([prop_types_default.a.string, prop_types_default.a.array]),
71819
- isNarrow: prop_types_default.a.bool,
71820
- isOpen: prop_types_default.a.bool,
71821
- onSelect: prop_types_default.a.func,
71822
- options: prop_types_default.a.array,
71823
- selected: prop_types_default.a.string,
71824
- maxHeight: prop_types_default.a.number
71825
- };
71826
-
71827
71964
  var icons = {
71828
71965
  single: small_single_selection_default.a,
71829
71966
  children: small_children_selection_default.a,
@@ -71844,13 +71981,15 @@ var AdvancedFilterDialog_AdvancedFilterDialog = function AdvancedFilterDialog(pr
71844
71981
  isOpen = props.isOpen,
71845
71982
  isNarrow = props.isNarrow,
71846
71983
  labels = props.labels,
71847
- disableAccessor = props.disableAccessor,
71984
+ _props$disableAccesso = props.disableAccessor,
71985
+ disableAccessor = _props$disableAccesso === undefined ? es_always(false) : _props$disableAccesso,
71848
71986
  expandAll = props.expandAll,
71849
71987
  collapseAll = props.collapseAll,
71850
71988
  spotlight = props.spotlight,
71851
71989
  setSpotlight = props.setSpotlight,
71852
71990
  expandedIds = props.expandedIds,
71853
- rest = AdvancedFilterDialog_objectWithoutProperties(props, ['id', 'title', 'items', 'labelRenderer', 'onClose', 'changeSelection', 'isOpen', 'isNarrow', 'labels', 'disableAccessor', 'expandAll', 'collapseAll', 'spotlight', 'setSpotlight', 'expandedIds']);
71991
+ allItems = props.allItems,
71992
+ rest = AdvancedFilterDialog_objectWithoutProperties(props, ['id', 'title', 'items', 'labelRenderer', 'onClose', 'changeSelection', 'isOpen', 'isNarrow', 'labels', 'disableAccessor', 'expandAll', 'collapseAll', 'spotlight', 'setSpotlight', 'expandedIds', 'allItems']);
71854
71993
 
71855
71994
  var _useState = Object(react["useState"])('single'),
71856
71995
  selectionMode = _useState[0],
@@ -71906,10 +72045,16 @@ var AdvancedFilterDialog_AdvancedFilterDialog = function AdvancedFilterDialog(pr
71906
72045
  img: all_selection_default.a
71907
72046
  }];
71908
72047
 
72048
+ var _allGroupedItems = pipe(es_map(function (item) {
72049
+ return AdvancedFilterDialog_extends({}, item, {
72050
+ isSelected: es_has(item.id, selection) ? !item.isSelected : !!item.isSelected
72051
+ });
72052
+ }), es_groupBy(es_propOr('#ROOT', 'parentId')))(allItems);
72053
+ var _disableAccessor = selectionMode === 'single' || selectionMode === 'level' ? utils_getSingleDisableAccessor(_allGroupedItems, disableAccessor) : utils_getHierDisableAccessor(_allGroupedItems, groupedFilteredItems, disableAccessor);
71909
72054
  var isDisabled = function isDisabled(item) {
71910
72055
  return es_is(Function, disableAccessor) ? disableAccessor(item) : false;
71911
72056
  };
71912
- var scopeGetters = AdvancedFilterDialog_getScopeGetters(selectionItems, groupedFilteredItems, isDisabled);
72057
+ var scopeGetter = es_prop(selectionMode, getScopeGetters);
71913
72058
 
71914
72059
  var onChangeSelection = function onChangeSelection(ids) {
71915
72060
  var nextSelection = es_reduce(function (acc, id) {
@@ -72028,14 +72173,15 @@ var AdvancedFilterDialog_AdvancedFilterDialog = function AdvancedFilterDialog(pr
72028
72173
  maxHeight: listHeight
72029
72174
  }),
72030
72175
  react_default.a.createElement(src_VirtualizedTree_VirtualizedTree, AdvancedFilterDialog_extends({}, rest, {
72031
- disableAccessor: disableAccessor,
72176
+ disableAccessor: _disableAccessor,
72177
+ isGreyed: isDisabled,
72032
72178
  labels: labels,
72033
72179
  labelRenderer: labelRenderer,
72034
72180
  items: selectionItems,
72035
72181
  changeSelection: onChangeSelection,
72036
72182
  withExpandControl: true,
72037
72183
  treeHeight: listHeight,
72038
- getItemScope: es_prop(selectionMode, scopeGetters),
72184
+ scopeGetter: scopeGetter,
72039
72185
  expandedIds: expandedIds
72040
72186
  }))
72041
72187
  )
@@ -72118,7 +72264,8 @@ AdvancedFilterDialog_AdvancedFilterDialog.propTypes = {
72118
72264
  collapseAll: prop_types_default.a.func,
72119
72265
  spotlight: prop_types_default.a.object,
72120
72266
  setSpotlight: prop_types_default.a.func,
72121
- expandedIds: prop_types_default.a.object
72267
+ expandedIds: prop_types_default.a.object,
72268
+ allItems: prop_types_default.a.array
72122
72269
  };
72123
72270
 
72124
72271
  /* harmony default export */ var src_AdvancedFilterDialog_AdvancedFilterDialog = (withSpotlight_withSpotlight(withExpansionTree_withExpansionTree(AdvancedFilterDialog_AdvancedFilterDialog)));
@@ -72168,9 +72315,12 @@ var HierarchicalFilter_extends = Object.assign || function (target) { for (var i
72168
72315
 
72169
72316
 
72170
72317
 
72171
- var HierarchicalFilter_getCounter = function getCounter(items, displayAccessor, tagAccessor) {
72172
- var count = pipe(es_filter(es_prop('isSelected')), es_map(es_prop('id')), es_uniq, es_length)(items);
72173
- var total = pipe(es_when(es_always(es_is(Function, displayAccessor)), es_filter(displayAccessor)), es_map(es_prop('id')), es_uniq, es_length)(items);
72318
+
72319
+ var HierarchicalFilter_getCounter = function getCounter(items, disableAccessor, tagAccessor) {
72320
+ var count = pipe(es_filter(function (item) {
72321
+ return es_prop('isSelected', item) && !disableAccessor(item);
72322
+ }), es_map(es_prop('id')), es_uniq, es_length)(items);
72323
+ var total = pipe(es_when(es_always(es_is(Function, disableAccessor)), es_reject(disableAccessor)), es_map(es_prop('id')), es_uniq, es_length)(items);
72174
72324
  if (es_is(Function, tagAccessor)) {
72175
72325
  return tagAccessor(count, total);
72176
72326
  }
@@ -72194,17 +72344,24 @@ var HierarchicalFilter_HierarchicalFilter = function HierarchicalFilter(props) {
72194
72344
  label = props.label,
72195
72345
  labels = props.labels,
72196
72346
  tagAccessor = props.tagAccessor,
72197
- displayAccessor = props.displayAccessor,
72198
72347
  expandedIds = props.expandedIds,
72199
72348
  spotlight = props.spotlight,
72200
72349
  setSpotlight = props.setSpotlight,
72201
- hasSpotlight = props.hasSpotlight;
72350
+ hasSpotlight = props.hasSpotlight,
72351
+ _props$disableAccesso = props.disableAccessor,
72352
+ disableAccessor = _props$disableAccesso === undefined ? es_always(false) : _props$disableAccesso,
72353
+ allItems = props.allItems;
72202
72354
 
72203
72355
  var classes = ScopeList_styles_useStyles({ accessibility: accessibility });
72204
72356
  var theme = useTheme_useTheme();
72205
72357
  var isRtl = utils_getIsRtl(theme);
72206
72358
  var Chip = es_isNil(Tag) ? src_Tag_Tag : Tag;
72207
- var tagValue = HierarchicalFilter_getCounter(items, displayAccessor, tagAccessor);
72359
+ var _allGroupedItems = es_groupBy(es_propOr('#ROOT', 'parentId'), allItems);
72360
+ var _disableAccessor = utils_getSingleDisableAccessor(_allGroupedItems, disableAccessor);
72361
+ var tagValue = HierarchicalFilter_getCounter(items, _disableAccessor, tagAccessor);
72362
+ var isDisabled = function isDisabled(item) {
72363
+ return es_is(Function, disableAccessor) ? disableAccessor(item) : false;
72364
+ };
72208
72365
 
72209
72366
  var onSelect = function onSelect(values) {
72210
72367
  changeSelection(id, values);
@@ -72264,7 +72421,13 @@ var HierarchicalFilter_HierarchicalFilter = function HierarchicalFilter(props) {
72264
72421
  tagValue
72265
72422
  )
72266
72423
  }, expansionPanelProps),
72267
- react_default.a.createElement(src_VirtualizedTree_VirtualizedTree, HierarchicalFilter_extends({}, props, { items: items, changeSelection: onSelect, isRtl: isRtl }))
72424
+ react_default.a.createElement(src_VirtualizedTree_VirtualizedTree, HierarchicalFilter_extends({}, props, {
72425
+ items: items,
72426
+ changeSelection: onSelect,
72427
+ isRtl: isRtl,
72428
+ disableAccessor: _disableAccessor,
72429
+ isGreyed: isDisabled
72430
+ }))
72268
72431
  );
72269
72432
  };
72270
72433
 
@@ -72275,7 +72438,6 @@ HierarchicalFilter_HierarchicalFilter.propTypes = {
72275
72438
  changeSelection: prop_types_default.a.func,
72276
72439
  onChangeActivePanel: prop_types_default.a.func,
72277
72440
  disableAccessor: prop_types_default.a.func,
72278
- displayAccessor: prop_types_default.a.func,
72279
72441
  HTMLRenderer: prop_types_default.a.func,
72280
72442
  isRtl: prop_types_default.a.bool,
72281
72443
  items: prop_types_default.a.array,
@@ -72293,7 +72455,8 @@ HierarchicalFilter_HierarchicalFilter.propTypes = {
72293
72455
  expandedIds: prop_types_default.a.object,
72294
72456
  spotlight: prop_types_default.a.object,
72295
72457
  setSpotlight: prop_types_default.a.func,
72296
- hasSpotlight: prop_types_default.a.bool
72458
+ hasSpotlight: prop_types_default.a.bool,
72459
+ allItems: prop_types_default.a.array
72297
72460
  };
72298
72461
 
72299
72462
  /* harmony default export */ var src_HierarchicalFilter_HierarchicalFilter = (withSpotlight_withSpotlight(withExpansionTree_withExpansionTree(HierarchicalFilter_HierarchicalFilter)));
@@ -72792,7 +72955,7 @@ function warning(condition, message) {
72792
72955
  var createClass = __webpack_require__(64);
72793
72956
 
72794
72957
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
72795
- var inheritsLoose = __webpack_require__(37);
72958
+ var inheritsLoose = __webpack_require__(38);
72796
72959
 
72797
72960
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
72798
72961
  var assertThisInitialized = __webpack_require__(73);