@sis-cc/dotstatsuite-visions 10.12.0 → 10.13.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.12.0 - https://visions-qa.siscc.org/#o
2
+ * @sis-cc/dotstatsuite-visions v10.13.0 - https://visions-qa.siscc.org/#o
3
3
  * MIT Licensed
4
4
  */
5
5
  (function webpackUniversalModuleDefinition(root, factory) {
@@ -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.12.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"}};
6702
+ module.exports = {"name":"@sis-cc/dotstatsuite-visions","version":"10.13.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 */
@@ -42236,7 +42236,7 @@ var CustomChip_CustomChip = function CustomChip(_ref) {
42236
42236
  className: iconClasses,
42237
42237
  'aria-label': ariaLabel + ' ' + label,
42238
42238
  component: 'span',
42239
- tabIndex: -1
42239
+ tabIndex: 0
42240
42240
  },
42241
42241
  react_default.a.createElement(Cross, null)
42242
42242
  ),
@@ -43097,9 +43097,9 @@ var Item_Item = function Item(_ref) {
43097
43097
  action(parentId, id);
43098
43098
  e.stopPropagation();
43099
43099
  },
43100
- tabIndex: 0
43100
+ tabIndex: 0,
43101
+ style: { display: 'list-item' }
43101
43102
  },
43102
- '\u2022 ',
43103
43103
  labelAccessor(subtopic, parentId)
43104
43104
  );
43105
43105
  })(pipe(es_propOr([], 'subtopics'), es_ifElse(es_always(isSecondLevelClikable), es_identity, es_intersperse(' • ')))(item))
@@ -43184,6 +43184,7 @@ var CollapseButtons_extends = Object.assign || function (target) { for (var i =
43184
43184
 
43185
43185
 
43186
43186
 
43187
+
43187
43188
  var MAX_COLUMNS = 12;
43188
43189
  var COLUMNS = [12, 12, 6, 4, 3, 3, 2, 2, 2, 2, 2, 2, 1];
43189
43190
 
@@ -43257,31 +43258,35 @@ var CollapseButtons_CollapseButtons = function CollapseButtons(props) {
43257
43258
  return react_default.a.createElement(
43258
43259
  esm_Grid_Grid,
43259
43260
  CollapseButtons_extends({ item: true, xs: 12, sm: 12, md: es_nth(nbColumns)(COLUMNS) }, gridButtonsProps, { key: id }),
43260
- react_default.a.createElement(src_ToggleButton_ToggleButton, {
43261
- textTransform: textTransform,
43262
- label: label,
43263
- tabindex: es_isNil(toggleId) || es_prop(id)(toggleId) || compose(es_not, es_head, es_values)(toggleId) ? 0 : -1,
43264
- isOpen: es_prop(id)(toggleId),
43265
- toggle: function toggle() {
43266
- var _setIsOpen2;
43267
-
43268
- return setIsOpen((_setIsOpen2 = {}, _setIsOpen2[id] = !es_prop(id)(toggleId), _setIsOpen2));
43269
- },
43270
- testId: testId + '_' + id,
43271
- id: id
43272
- }),
43273
- isMobileView && react_default.a.createElement(
43274
- esm_Collapse_Collapse,
43275
- {
43276
- 'in': es_prop(id)(toggleId),
43277
- timeout: 'auto',
43278
- unmountOnExit: true,
43279
- className: classes.collapseContainer
43280
- },
43281
- react_default.a.createElement(
43282
- CollapseButtons_Paper,
43283
- { elevation: 10, isMobileView: isMobileView },
43284
- getValues(id)(values)
43261
+ react_default.a.createElement(
43262
+ esm_Typography_Typography,
43263
+ { variant: 'h3' },
43264
+ react_default.a.createElement(src_ToggleButton_ToggleButton, {
43265
+ textTransform: textTransform,
43266
+ label: label,
43267
+ tabindex: es_isNil(toggleId) || es_prop(id)(toggleId) || compose(es_not, es_head, es_values)(toggleId) ? 0 : -1,
43268
+ isOpen: es_prop(id)(toggleId),
43269
+ toggle: function toggle() {
43270
+ var _setIsOpen2;
43271
+
43272
+ return setIsOpen((_setIsOpen2 = {}, _setIsOpen2[id] = !es_prop(id)(toggleId), _setIsOpen2));
43273
+ },
43274
+ testId: testId + '_' + id,
43275
+ id: id
43276
+ }),
43277
+ isMobileView && react_default.a.createElement(
43278
+ esm_Collapse_Collapse,
43279
+ {
43280
+ 'in': es_prop(id)(toggleId),
43281
+ timeout: 'auto',
43282
+ unmountOnExit: true,
43283
+ className: classes.collapseContainer
43284
+ },
43285
+ react_default.a.createElement(
43286
+ CollapseButtons_Paper,
43287
+ { elevation: 10, isMobileView: isMobileView },
43288
+ getValues(id)(values)
43289
+ )
43285
43290
  )
43286
43291
  )
43287
43292
  );
@@ -46463,7 +46468,8 @@ var Dataflow_Dataflow = function Dataflow(_ref2) {
46463
46468
  esm_IconButton_IconButton,
46464
46469
  {
46465
46470
  'data-testid': 'dataflow-expand-button-test-id',
46466
- 'aria-label': 'expand',
46471
+ 'aria-label': es_propOr('Show details above', 'expand')(labels),
46472
+ 'aria-expanded': isExpanded,
46467
46473
  onClick: function onClick() {
46468
46474
  return handleExpand();
46469
46475
  },
@@ -48500,7 +48506,8 @@ var ExpansionPanel_CustomExpansionPanel = function CustomExpansionPanel(_ref) {
48500
48506
  return onChangeActivePanel(id);
48501
48507
  } : undefined,
48502
48508
  classes: { root: isNarrow ? classes.panelBorder : classes.panel },
48503
- elevation: 0
48509
+ elevation: 0,
48510
+ 'aria-expanded': isOpen
48504
48511
  },
48505
48512
  react_default.a.createElement(
48506
48513
  esm_AccordionSummary_AccordionSummary,
@@ -48558,6 +48565,8 @@ var ExpansionPanel_CustomExpansionPanel = function CustomExpansionPanel(_ref) {
48558
48565
  react_default.a.createElement(
48559
48566
  esm_AccordionDetails_AccordionDetails,
48560
48567
  {
48568
+ id: id,
48569
+ 'aria-label': label,
48561
48570
  className: classnames_default()(classes.details, (_cx5 = {}, _cx5[classes.overflow] = overflow, _cx5[classes.height] = maxHeight, _cx5))
48562
48571
  },
48563
48572
  children
@@ -66996,6 +67005,7 @@ var ToggleButton_ToggleButton = function ToggleButton(_ref2) {
66996
67005
  return react_default.a.createElement(
66997
67006
  esm_Button_Button,
66998
67007
  {
67008
+ 'aria-expanded': isOpen,
66999
67009
  'aria-label': label,
67000
67010
  tabIndex: tabindex,
67001
67011
  'data-testid': testId,
@@ -70588,7 +70598,8 @@ var VirtualizedTree_Item_Item = function Item(_ref) {
70588
70598
  labels = _ref.labels,
70589
70599
  _ref$depth = _ref.depth,
70590
70600
  depth = _ref$depth === undefined ? 0 : _ref$depth,
70591
- eventsListeners = _ref.eventsListeners;
70601
+ eventsListeners = _ref.eventsListeners,
70602
+ expanded = _ref.expanded;
70592
70603
 
70593
70604
  var _React$useState = react_default.a.useState(false),
70594
70605
  isTooltipShown = _React$useState[0],
@@ -70614,25 +70625,28 @@ var VirtualizedTree_Item_Item = function Item(_ref) {
70614
70625
  disableFocusRipple: true,
70615
70626
  className: classes.arrow,
70616
70627
  'aria-label': ariaLabel,
70617
- tabIndex: -1,
70628
+ tabIndex: 0,
70618
70629
  size: 'small',
70619
70630
  color: 'primary',
70620
70631
  onClick: function onClick() {
70621
70632
  return changeList(hierarchicalId || id);
70622
- }
70633
+ },
70634
+ 'aria-expanded': expanded
70623
70635
  },
70624
70636
  react_default.a.createElement(NavigateIcon, null)
70625
70637
  ),
70626
70638
  react_default.a.createElement(esm_ListItemText_ListItemText, {
70627
70639
  'data-testid': 'value_' + id,
70628
70640
  tabIndex: 0,
70641
+ role: 'checkbox',
70629
70642
  'aria-label': isGreyed ? es_propOr('', 'disableItemLabel')(labels) + ' ' + label : label,
70630
- 'aria-pressed': isSelected,
70643
+ 'aria-checked': isSelected,
70631
70644
  'aria-disabled': isDisabled,
70632
70645
  primaryTypographyProps: { noWrap: true, color: 'inherit' },
70633
70646
  secondaryTypographyProps: { color: 'inherit' },
70634
70647
  classes: { root: classes.listItem },
70635
70648
  className: classnames_default()((_cx = {}, _cx[classes.accessibilityItemHover] = accessibility, _cx[classes.listItemSelected] = isSelected, _cx[classes.listItemHover] = !isDisabled, _cx)),
70649
+ onKeyDown: isDisabled ? null : eventsListeners.onKeyDown,
70636
70650
  onClick: isDisabled ? null : eventsListeners.onClick,
70637
70651
  onMouseDown: isDisabled || isTooltipShown ? null : eventsListeners.onMouseDown,
70638
70652
  onMouseEnter: isDisabled || isTooltipShown ? null : eventsListeners.onMouseEnter,
@@ -70669,7 +70683,7 @@ var VirtualizedTree_Item_Item = function Item(_ref) {
70669
70683
  } }),
70670
70684
  enterDelay: 400,
70671
70685
  enterNextDelay: 400,
70672
- tabIndex: 0,
70686
+ tabIndex: description ? 0 : -1,
70673
70687
  'aria-label': description,
70674
70688
  'aria-hidden': false,
70675
70689
  placement: 'top',
@@ -70729,7 +70743,8 @@ VirtualizedTree_Item_Item.propTypes = {
70729
70743
  labels: prop_types_default.a.object,
70730
70744
  depth: prop_types_default.a.number,
70731
70745
  eventsListeners: prop_types_default.a.object,
70732
- isGreyed: prop_types_default.a.bool
70746
+ isGreyed: prop_types_default.a.bool,
70747
+ expanded: prop_types_default.a.bool
70733
70748
  };
70734
70749
 
70735
70750
  /* harmony default export */ var VirtualizedTree_Item = (VirtualizedTree_Item_Item);
@@ -71256,6 +71271,8 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
71256
71271
  apply();
71257
71272
  } else if (e.key === 'Control' && !es_isEmpty(selectIds)) {
71258
71273
  apply();
71274
+ } else if (e.key === 'Enter' && !es_isNil(lastItemId)) {
71275
+ apply();
71259
71276
  }
71260
71277
  };
71261
71278
 
@@ -71276,6 +71293,12 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
71276
71293
  multiSelect(id);
71277
71294
  setLastItemId(id);
71278
71295
  },
71296
+ onKeyDown: function onKeyDown(e) {
71297
+ if (e.key === 'Enter') {
71298
+ multiSelect(id);
71299
+ setLastItemId(id);
71300
+ }
71301
+ },
71279
71302
  onClick: function onClick(e) {
71280
71303
  e.preventDefault();
71281
71304
  if (e.ctrlKey && !simpleSelectionMode) {
@@ -71336,11 +71359,14 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
71336
71359
  },
71337
71360
  react_default.a.createElement(
71338
71361
  AutoSizer_default.a,
71339
- null,
71362
+ { role: 'presentation' },
71340
71363
  function (_ref) {
71341
71364
  var height = _ref.height,
71342
71365
  width = _ref.width;
71343
71366
  return react_default.a.createElement(List_default.a, {
71367
+ role: 'presentation',
71368
+ 'aria-readonly': null,
71369
+ 'aria-label': 'content',
71344
71370
  overscan: 10,
71345
71371
  tabIndex: -1,
71346
71372
  height: height + 2,
@@ -71367,6 +71393,7 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
71367
71393
  return expand(utils_getHierarchicalId(item));
71368
71394
  },
71369
71395
  NavigateIcon: es_has(itemId, expandedIds) ? ExpandLess_default.a : ExpandMore_default.a,
71396
+ expanded: es_has(itemId, expandedIds),
71370
71397
  isRtl: isRtl,
71371
71398
  eventsListeners: itemEventsListeners(utils_getHierarchicalId(item), index),
71372
71399
  HTMLRenderer: HTMLRenderer,
@@ -71375,7 +71402,8 @@ var VirtualizedTree_VirtualizedTree = function VirtualizedTree(props) {
71375
71402
  style: style,
71376
71403
  accessibility: accessibility,
71377
71404
  ariaLabel: es_prop('navigateNext')(labels),
71378
- theme: theme
71405
+ theme: theme,
71406
+ role: 'presentation'
71379
71407
  }));
71380
71408
  }
71381
71409
  });