@sis-cc/dotstatsuite-visions 12.26.1 → 12.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,7 @@
1
1
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
2
2
 
3
+ function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
4
+
3
5
  import React from 'react';
4
6
  import PropTypes from 'prop-types';
5
7
  import * as R from 'ramda';
@@ -89,20 +91,31 @@ var useStyles = makeStyles(function (theme) {
89
91
  }
90
92
  };
91
93
  });
94
+ var BasicHTMLRenderer = function BasicHTMLRenderer(_ref) {
95
+ var html = _ref.html,
96
+ rest = _objectWithoutProperties(_ref, ['html']);
97
+
98
+ return React.createElement('span', _extends({ dangerouslySetInnerHTML: { __html: html } }, rest));
99
+ };
92
100
 
93
- var DataHeader = function DataHeader(_ref) {
101
+ BasicHTMLRenderer.propTypes = process.env.NODE_ENV !== "production" ? {
102
+ html: PropTypes.string
103
+ } : {};
104
+ var DataHeader = function DataHeader(_ref2) {
94
105
  var _cx;
95
106
 
96
- var children = _ref.children,
97
- title = _ref.title,
98
- _ref$subtitle = _ref.subtitle,
99
- subtitle = _ref$subtitle === undefined ? [] : _ref$subtitle,
100
- combinations = _ref.combinations,
101
- disclaimer = _ref.disclaimer,
102
- sideProps = _ref.sideProps,
103
- SideIcon = _ref.SideIcon,
104
- _ref$isSticky = _ref.isSticky,
105
- isSticky = _ref$isSticky === undefined ? false : _ref$isSticky;
107
+ var children = _ref2.children,
108
+ title = _ref2.title,
109
+ _ref2$subtitle = _ref2.subtitle,
110
+ subtitle = _ref2$subtitle === undefined ? [] : _ref2$subtitle,
111
+ combinations = _ref2.combinations,
112
+ disclaimer = _ref2.disclaimer,
113
+ sideProps = _ref2.sideProps,
114
+ SideIcon = _ref2.SideIcon,
115
+ _ref2$isSticky = _ref2.isSticky,
116
+ isSticky = _ref2$isSticky === undefined ? false : _ref2$isSticky,
117
+ _ref2$HTMLRenderer = _ref2.HTMLRenderer,
118
+ HTMLRenderer = _ref2$HTMLRenderer === undefined ? BasicHTMLRenderer : _ref2$HTMLRenderer;
106
119
 
107
120
  var target = React.useRef(null);
108
121
 
@@ -157,7 +170,11 @@ var DataHeader = function DataHeader(_ref) {
157
170
  { className: classes.sideIconContainer },
158
171
  React.createElement(SideIcon, { sideProps: sideProps })
159
172
  ),
160
- React.createElement(Flags, { classes: classes, content: R.propOr([], 'flags', title) })
173
+ React.createElement(Flags, {
174
+ classes: classes,
175
+ HTMLRenderer: HTMLRenderer,
176
+ content: R.propOr([], 'flags', title)
177
+ })
161
178
  ),
162
179
  isWidthUp(T4_BREAKPOINTS.xs3) && subtitle && R.not(R.isEmpty(subtitle)) && React.createElement(
163
180
  'div',
@@ -178,7 +195,11 @@ var DataHeader = function DataHeader(_ref) {
178
195
  { variant: 'inherit' },
179
196
  sub.label
180
197
  ),
181
- R.not(R.isEmpty(R.propOr([], 'flags', sub))) && React.createElement(Flags, { classes: classes, content: R.prop('flags', sub) }),
198
+ R.not(R.isEmpty(R.propOr([], 'flags', sub))) && React.createElement(Flags, {
199
+ classes: classes,
200
+ HTMLRenderer: HTMLRenderer,
201
+ content: R.prop('flags', sub)
202
+ }),
182
203
  R.lt(index + 1, subtitleLength) && React.createElement(
183
204
  'svg',
184
205
  { width: '24', height: '8' },
@@ -205,7 +226,11 @@ var DataHeader = function DataHeader(_ref) {
205
226
  { variant: 'inherit' },
206
227
  comb.label
207
228
  ),
208
- R.not(R.isEmpty(R.propOr([], 'flags', comb))) && React.createElement(Flags, { classes: classes, content: R.prop('flags', comb) }),
229
+ R.not(R.isEmpty(R.propOr([], 'flags', comb))) && React.createElement(Flags, {
230
+ classes: classes,
231
+ HTMLRenderer: HTMLRenderer,
232
+ content: R.prop('flags', comb)
233
+ }),
209
234
  R.lt(index + 1, combinationsLength) && React.createElement(
210
235
  'svg',
211
236
  { width: '24', height: '8' },
@@ -229,7 +254,7 @@ var DataHeader = function DataHeader(_ref) {
229
254
  { className: classes.children },
230
255
  R.not(R.isEmpty(reducedContent)) && React.createElement(
231
256
  TooltipHeader,
232
- { classes: classes, content: reducedContent },
257
+ { classes: classes, content: reducedContent, HTMLRenderer: HTMLRenderer },
233
258
  React.createElement(Info, { className: classes.infoIcon })
234
259
  ),
235
260
  children
@@ -267,7 +292,8 @@ DataHeader.propTypes = process.env.NODE_ENV !== "production" ? {
267
292
  SideIcon: PropTypes.func,
268
293
  disclaimer: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),
269
294
  children: PropTypes.node,
270
- isSticky: PropTypes.bool
295
+ isSticky: PropTypes.bool,
296
+ HTMLRenderer: PropTypes.func
271
297
  } : {};
272
298
 
273
299
  export default DataHeader;
@@ -6,7 +6,8 @@ import { TooltipHeader } from './TooltipHeader';
6
6
 
7
7
  var Flags = function Flags(_ref) {
8
8
  var classes = _ref.classes,
9
- content = _ref.content;
9
+ content = _ref.content,
10
+ HTMLRenderer = _ref.HTMLRenderer;
10
11
 
11
12
  var codes = R.pipe(R.pluck('code'), R.filter(R.identity))(content);
12
13
  var hasCodes = !R.isEmpty(codes);
@@ -16,7 +17,7 @@ var Flags = function Flags(_ref) {
16
17
  })(codes);
17
18
  return React.createElement(
18
19
  TooltipHeader,
19
- { classes: classes, content: content },
20
+ { classes: classes, content: content, HTMLRenderer: HTMLRenderer },
20
21
  React.createElement(
21
22
  'sup',
22
23
  { className: classes.svgWrapper },
@@ -28,6 +29,7 @@ var Flags = function Flags(_ref) {
28
29
 
29
30
  Flags.propTypes = process.env.NODE_ENV !== "production" ? {
30
31
  classes: PropTypes.object,
32
+ HTMLRenderer: PropTypes.func,
31
33
  content: PropTypes.arrayOf(PropTypes.shape({
32
34
  header: PropTypes.string,
33
35
  label: PropTypes.string,
@@ -7,6 +7,7 @@ import Title from './Title';
7
7
  export var TooltipHeader = function TooltipHeader(_ref) {
8
8
  var children = _ref.children,
9
9
  classes = _ref.classes,
10
+ HTMLRenderer = _ref.HTMLRenderer,
10
11
  _ref$content = _ref.content,
11
12
  content = _ref$content === undefined ? [] : _ref$content;
12
13
 
@@ -24,7 +25,7 @@ export var TooltipHeader = function TooltipHeader(_ref) {
24
25
  'li',
25
26
  { key: label + '-' + index },
26
27
  React.createElement(Title, { header: header }),
27
- label,
28
+ R.is(Function, HTMLRenderer) ? React.createElement(HTMLRenderer, { html: label }) : label,
28
29
  R.not(R.isEmpty(sub)) && React.createElement(
29
30
  'ul',
30
31
  { className: classes.subContent },
@@ -33,7 +34,7 @@ export var TooltipHeader = function TooltipHeader(_ref) {
33
34
  return React.createElement(
34
35
  'li',
35
36
  { key: label + '-' + index },
36
- label
37
+ R.is(Function, HTMLRenderer) ? React.createElement(HTMLRenderer, { html: label }) : label
37
38
  );
38
39
  }, sub)
39
40
  )
@@ -70,7 +71,8 @@ TooltipHeader.propTypes = process.env.NODE_ENV !== "production" ? {
70
71
  sub: PropTypes.arrayOf(PropTypes.shape({
71
72
  label: PropTypes.string
72
73
  }))
73
- }))
74
+ })),
75
+ HTMLRenderer: PropTypes.func
74
76
  } : {};
75
77
 
76
78
  export default TooltipHeader;
@@ -58,6 +58,8 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
58
58
 
59
59
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
60
60
 
61
+ function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
62
+
61
63
  var useStyles = (0, _makeStyles2.default)(function (theme) {
62
64
  return {
63
65
  header: {
@@ -132,20 +134,31 @@ var useStyles = (0, _makeStyles2.default)(function (theme) {
132
134
  }
133
135
  };
134
136
  });
137
+ var BasicHTMLRenderer = function BasicHTMLRenderer(_ref) {
138
+ var html = _ref.html,
139
+ rest = _objectWithoutProperties(_ref, ['html']);
140
+
141
+ return _react2.default.createElement('span', _extends({ dangerouslySetInnerHTML: { __html: html } }, rest));
142
+ };
135
143
 
136
- var DataHeader = function DataHeader(_ref) {
144
+ BasicHTMLRenderer.propTypes = process.env.NODE_ENV !== "production" ? {
145
+ html: _propTypes2.default.string
146
+ } : {};
147
+ var DataHeader = function DataHeader(_ref2) {
137
148
  var _cx;
138
149
 
139
- var children = _ref.children,
140
- title = _ref.title,
141
- _ref$subtitle = _ref.subtitle,
142
- subtitle = _ref$subtitle === undefined ? [] : _ref$subtitle,
143
- combinations = _ref.combinations,
144
- disclaimer = _ref.disclaimer,
145
- sideProps = _ref.sideProps,
146
- SideIcon = _ref.SideIcon,
147
- _ref$isSticky = _ref.isSticky,
148
- isSticky = _ref$isSticky === undefined ? false : _ref$isSticky;
150
+ var children = _ref2.children,
151
+ title = _ref2.title,
152
+ _ref2$subtitle = _ref2.subtitle,
153
+ subtitle = _ref2$subtitle === undefined ? [] : _ref2$subtitle,
154
+ combinations = _ref2.combinations,
155
+ disclaimer = _ref2.disclaimer,
156
+ sideProps = _ref2.sideProps,
157
+ SideIcon = _ref2.SideIcon,
158
+ _ref2$isSticky = _ref2.isSticky,
159
+ isSticky = _ref2$isSticky === undefined ? false : _ref2$isSticky,
160
+ _ref2$HTMLRenderer = _ref2.HTMLRenderer,
161
+ HTMLRenderer = _ref2$HTMLRenderer === undefined ? BasicHTMLRenderer : _ref2$HTMLRenderer;
149
162
 
150
163
  var target = _react2.default.useRef(null);
151
164
 
@@ -200,7 +213,11 @@ var DataHeader = function DataHeader(_ref) {
200
213
  { className: classes.sideIconContainer },
201
214
  _react2.default.createElement(SideIcon, { sideProps: sideProps })
202
215
  ),
203
- _react2.default.createElement(_Flags2.default, { classes: classes, content: R.propOr([], 'flags', title) })
216
+ _react2.default.createElement(_Flags2.default, {
217
+ classes: classes,
218
+ HTMLRenderer: HTMLRenderer,
219
+ content: R.propOr([], 'flags', title)
220
+ })
204
221
  ),
205
222
  isWidthUp(_theme.T4_BREAKPOINTS.xs3) && subtitle && R.not(R.isEmpty(subtitle)) && _react2.default.createElement(
206
223
  'div',
@@ -221,7 +238,11 @@ var DataHeader = function DataHeader(_ref) {
221
238
  { variant: 'inherit' },
222
239
  sub.label
223
240
  ),
224
- R.not(R.isEmpty(R.propOr([], 'flags', sub))) && _react2.default.createElement(_Flags2.default, { classes: classes, content: R.prop('flags', sub) }),
241
+ R.not(R.isEmpty(R.propOr([], 'flags', sub))) && _react2.default.createElement(_Flags2.default, {
242
+ classes: classes,
243
+ HTMLRenderer: HTMLRenderer,
244
+ content: R.prop('flags', sub)
245
+ }),
225
246
  R.lt(index + 1, subtitleLength) && _react2.default.createElement(
226
247
  'svg',
227
248
  { width: '24', height: '8' },
@@ -248,7 +269,11 @@ var DataHeader = function DataHeader(_ref) {
248
269
  { variant: 'inherit' },
249
270
  comb.label
250
271
  ),
251
- R.not(R.isEmpty(R.propOr([], 'flags', comb))) && _react2.default.createElement(_Flags2.default, { classes: classes, content: R.prop('flags', comb) }),
272
+ R.not(R.isEmpty(R.propOr([], 'flags', comb))) && _react2.default.createElement(_Flags2.default, {
273
+ classes: classes,
274
+ HTMLRenderer: HTMLRenderer,
275
+ content: R.prop('flags', comb)
276
+ }),
252
277
  R.lt(index + 1, combinationsLength) && _react2.default.createElement(
253
278
  'svg',
254
279
  { width: '24', height: '8' },
@@ -272,7 +297,7 @@ var DataHeader = function DataHeader(_ref) {
272
297
  { className: classes.children },
273
298
  R.not(R.isEmpty(reducedContent)) && _react2.default.createElement(
274
299
  _TooltipHeader2.default,
275
- { classes: classes, content: reducedContent },
300
+ { classes: classes, content: reducedContent, HTMLRenderer: HTMLRenderer },
276
301
  _react2.default.createElement(_Info2.default, { className: classes.infoIcon })
277
302
  ),
278
303
  children
@@ -310,7 +335,8 @@ DataHeader.propTypes = process.env.NODE_ENV !== "production" ? {
310
335
  SideIcon: _propTypes2.default.func,
311
336
  disclaimer: _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.element]),
312
337
  children: _propTypes2.default.node,
313
- isSticky: _propTypes2.default.bool
338
+ isSticky: _propTypes2.default.bool,
339
+ HTMLRenderer: _propTypes2.default.func
314
340
  } : {};
315
341
 
316
342
  exports.default = DataHeader;
@@ -24,7 +24,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
24
24
 
25
25
  var Flags = function Flags(_ref) {
26
26
  var classes = _ref.classes,
27
- content = _ref.content;
27
+ content = _ref.content,
28
+ HTMLRenderer = _ref.HTMLRenderer;
28
29
 
29
30
  var codes = R.pipe(R.pluck('code'), R.filter(R.identity))(content);
30
31
  var hasCodes = !R.isEmpty(codes);
@@ -34,7 +35,7 @@ var Flags = function Flags(_ref) {
34
35
  })(codes);
35
36
  return _react2.default.createElement(
36
37
  _TooltipHeader.TooltipHeader,
37
- { classes: classes, content: content },
38
+ { classes: classes, content: content, HTMLRenderer: HTMLRenderer },
38
39
  _react2.default.createElement(
39
40
  'sup',
40
41
  { className: classes.svgWrapper },
@@ -46,6 +47,7 @@ var Flags = function Flags(_ref) {
46
47
 
47
48
  Flags.propTypes = process.env.NODE_ENV !== "production" ? {
48
49
  classes: _propTypes2.default.object,
50
+ HTMLRenderer: _propTypes2.default.func,
49
51
  content: _propTypes2.default.arrayOf(_propTypes2.default.shape({
50
52
  header: _propTypes2.default.string,
51
53
  label: _propTypes2.default.string,
@@ -28,6 +28,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
28
28
  var TooltipHeader = exports.TooltipHeader = function TooltipHeader(_ref) {
29
29
  var children = _ref.children,
30
30
  classes = _ref.classes,
31
+ HTMLRenderer = _ref.HTMLRenderer,
31
32
  _ref$content = _ref.content,
32
33
  content = _ref$content === undefined ? [] : _ref$content;
33
34
 
@@ -45,7 +46,7 @@ var TooltipHeader = exports.TooltipHeader = function TooltipHeader(_ref) {
45
46
  'li',
46
47
  { key: label + '-' + index },
47
48
  _react2.default.createElement(_Title2.default, { header: header }),
48
- label,
49
+ R.is(Function, HTMLRenderer) ? _react2.default.createElement(HTMLRenderer, { html: label }) : label,
49
50
  R.not(R.isEmpty(sub)) && _react2.default.createElement(
50
51
  'ul',
51
52
  { className: classes.subContent },
@@ -54,7 +55,7 @@ var TooltipHeader = exports.TooltipHeader = function TooltipHeader(_ref) {
54
55
  return _react2.default.createElement(
55
56
  'li',
56
57
  { key: label + '-' + index },
57
- label
58
+ R.is(Function, HTMLRenderer) ? _react2.default.createElement(HTMLRenderer, { html: label }) : label
58
59
  );
59
60
  }, sub)
60
61
  )
@@ -91,7 +92,8 @@ TooltipHeader.propTypes = process.env.NODE_ENV !== "production" ? {
91
92
  sub: _propTypes2.default.arrayOf(_propTypes2.default.shape({
92
93
  label: _propTypes2.default.string
93
94
  }))
94
- }))
95
+ })),
96
+ HTMLRenderer: _propTypes2.default.func
95
97
  } : {};
96
98
 
97
99
  exports.default = TooltipHeader;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sis-cc/dotstatsuite-visions",
3
- "version": "12.26.1",
3
+ "version": "12.28.0",
4
4
  "description": "Library of visual components",
5
5
  "author": "OECD",
6
6
  "homepage": "https://visions-qa.siscc.org/#o",
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @sis-cc/dotstatsuite-visions v12.26.1 - https://visions-qa.siscc.org/#o
2
+ * @sis-cc/dotstatsuite-visions v12.28.0 - https://visions-qa.siscc.org/#o
3
3
  * MIT Licensed
4
4
  */
5
5
  (function webpackUniversalModuleDefinition(root, factory) {
@@ -8855,7 +8855,7 @@ if (true) {
8855
8855
  /* 154 */
8856
8856
  /***/ (function(module) {
8857
8857
 
8858
- module.exports = {"name":"@sis-cc/dotstatsuite-visions","version":"12.26.1","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":">=18"},"files":["css","es","lib","umd"],"scripts":{"peers":"install-peers --force-run","build":"cross-env NODE_OPTIONS=--openssl-legacy-provider nwb build-react-component --copy-files --no-demo && node scripts/doc && cross-env NODE_OPTIONS=--openssl-legacy-provider nwb build-demo","build:dev":"cross-env NODE_OPTIONS=--openssl-legacy-provider nwb build-react-component --copy-files --no-demo","clean":"nwb clean-module && nwb clean-demo","prepublishOnly":"npm run build","start":"cross-env NODE_OPTIONS=--openssl-legacy-provider nwb serve-react-demo","test":"jest","test:watch":"jest --watch --no-cache","lint":"eslint src/ --color","precommit":"lint-staged"},"dependencies":{"@hello-pangea/dnd":"^16.6.0","@react-hook/size":"^2.1.1","classnames":"^2.2.6","isemail":"^3.2.0","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":{"@emotion/react":"^11","@emotion/styled":"^11","@mui/icons-material":"^5","@mui/material":"^5","@mui/styles":"^5","date-fns":"^1.30.1","numeral":"^2.0.6","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","@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","cross-env":"^7.0.3","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","install-peers-cli":"^2.2.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-a11y":"^1.1.0","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"}};
8858
+ module.exports = {"name":"@sis-cc/dotstatsuite-visions","version":"12.28.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":">=18"},"files":["css","es","lib","umd"],"scripts":{"peers":"install-peers --force-run","build":"cross-env NODE_OPTIONS=--openssl-legacy-provider nwb build-react-component --copy-files --no-demo && node scripts/doc && cross-env NODE_OPTIONS=--openssl-legacy-provider nwb build-demo","build:dev":"cross-env NODE_OPTIONS=--openssl-legacy-provider nwb build-react-component --copy-files --no-demo","clean":"nwb clean-module && nwb clean-demo","prepublishOnly":"npm run build","start":"cross-env NODE_OPTIONS=--openssl-legacy-provider nwb serve-react-demo","test":"jest","test:watch":"jest --watch --no-cache","lint":"eslint src/ --color","precommit":"lint-staged"},"dependencies":{"@hello-pangea/dnd":"^16.6.0","@react-hook/size":"^2.1.1","classnames":"^2.2.6","isemail":"^3.2.0","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":{"@emotion/react":"^11","@emotion/styled":"^11","@mui/icons-material":"^5","@mui/material":"^5","@mui/styles":"^5","date-fns":"^1.30.1","numeral":"^2.0.6","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","@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","cross-env":"^7.0.3","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","install-peers-cli":"^2.2.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-a11y":"^1.1.0","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"}};
8859
8859
 
8860
8860
  /***/ }),
8861
8861
  /* 155 */
@@ -57209,6 +57209,7 @@ DataHeader_Title_Title.propTypes = {
57209
57209
  var TooltipHeader_TooltipHeader = function TooltipHeader(_ref) {
57210
57210
  var children = _ref.children,
57211
57211
  classes = _ref.classes,
57212
+ HTMLRenderer = _ref.HTMLRenderer,
57212
57213
  _ref$content = _ref.content,
57213
57214
  content = _ref$content === undefined ? [] : _ref$content;
57214
57215
 
@@ -57226,7 +57227,7 @@ var TooltipHeader_TooltipHeader = function TooltipHeader(_ref) {
57226
57227
  'li',
57227
57228
  { key: label + '-' + index },
57228
57229
  react_default.a.createElement(DataHeader_Title, { header: header }),
57229
- label,
57230
+ es_is(Function, HTMLRenderer) ? react_default.a.createElement(HTMLRenderer, { html: label }) : label,
57230
57231
  es_not(es_isEmpty(sub)) && react_default.a.createElement(
57231
57232
  'ul',
57232
57233
  { className: classes.subContent },
@@ -57235,7 +57236,7 @@ var TooltipHeader_TooltipHeader = function TooltipHeader(_ref) {
57235
57236
  return react_default.a.createElement(
57236
57237
  'li',
57237
57238
  { key: label + '-' + index },
57238
- label
57239
+ es_is(Function, HTMLRenderer) ? react_default.a.createElement(HTMLRenderer, { html: label }) : label
57239
57240
  );
57240
57241
  }, sub)
57241
57242
  )
@@ -57272,7 +57273,8 @@ TooltipHeader_TooltipHeader.propTypes = {
57272
57273
  sub: prop_types_default.a.arrayOf(prop_types_default.a.shape({
57273
57274
  label: prop_types_default.a.string
57274
57275
  }))
57275
- }))
57276
+ })),
57277
+ HTMLRenderer: prop_types_default.a.func
57276
57278
  };
57277
57279
 
57278
57280
  /* harmony default export */ var DataHeader_TooltipHeader = (TooltipHeader_TooltipHeader);
@@ -57285,7 +57287,8 @@ TooltipHeader_TooltipHeader.propTypes = {
57285
57287
 
57286
57288
  var Flags_Flags = function Flags(_ref) {
57287
57289
  var classes = _ref.classes,
57288
- content = _ref.content;
57290
+ content = _ref.content,
57291
+ HTMLRenderer = _ref.HTMLRenderer;
57289
57292
 
57290
57293
  var codes = pipe(es_pluck('code'), es_filter(es_identity))(content);
57291
57294
  var hasCodes = !es_isEmpty(codes);
@@ -57295,7 +57298,7 @@ var Flags_Flags = function Flags(_ref) {
57295
57298
  })(codes);
57296
57299
  return react_default.a.createElement(
57297
57300
  TooltipHeader_TooltipHeader,
57298
- { classes: classes, content: content },
57301
+ { classes: classes, content: content, HTMLRenderer: HTMLRenderer },
57299
57302
  react_default.a.createElement(
57300
57303
  'sup',
57301
57304
  { className: classes.svgWrapper },
@@ -57307,6 +57310,7 @@ var Flags_Flags = function Flags(_ref) {
57307
57310
 
57308
57311
  Flags_Flags.propTypes = {
57309
57312
  classes: prop_types_default.a.object,
57313
+ HTMLRenderer: prop_types_default.a.func,
57310
57314
  content: prop_types_default.a.arrayOf(prop_types_default.a.shape({
57311
57315
  header: prop_types_default.a.string,
57312
57316
  label: prop_types_default.a.string,
@@ -57578,6 +57582,8 @@ var utils_getReducedContent = function getReducedContent(_ref) {
57578
57582
  // CONCATENATED MODULE: ./src/DataHeader/DataHeader.js
57579
57583
  var DataHeader_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; };
57580
57584
 
57585
+ function DataHeader_objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
57586
+
57581
57587
 
57582
57588
 
57583
57589
 
@@ -57667,20 +57673,31 @@ var DataHeader_useStyles = makeStyles(function (theme) {
57667
57673
  }
57668
57674
  };
57669
57675
  });
57676
+ var DataHeader_BasicHTMLRenderer = function BasicHTMLRenderer(_ref) {
57677
+ var html = _ref.html,
57678
+ rest = DataHeader_objectWithoutProperties(_ref, ['html']);
57670
57679
 
57671
- var DataHeader_DataHeader = function DataHeader(_ref) {
57680
+ return react_default.a.createElement('span', DataHeader_extends({ dangerouslySetInnerHTML: { __html: html } }, rest));
57681
+ };
57682
+
57683
+ DataHeader_BasicHTMLRenderer.propTypes = {
57684
+ html: prop_types_default.a.string
57685
+ };
57686
+ var DataHeader_DataHeader = function DataHeader(_ref2) {
57672
57687
  var _cx;
57673
57688
 
57674
- var children = _ref.children,
57675
- title = _ref.title,
57676
- _ref$subtitle = _ref.subtitle,
57677
- subtitle = _ref$subtitle === undefined ? [] : _ref$subtitle,
57678
- combinations = _ref.combinations,
57679
- disclaimer = _ref.disclaimer,
57680
- sideProps = _ref.sideProps,
57681
- SideIcon = _ref.SideIcon,
57682
- _ref$isSticky = _ref.isSticky,
57683
- isSticky = _ref$isSticky === undefined ? false : _ref$isSticky;
57689
+ var children = _ref2.children,
57690
+ title = _ref2.title,
57691
+ _ref2$subtitle = _ref2.subtitle,
57692
+ subtitle = _ref2$subtitle === undefined ? [] : _ref2$subtitle,
57693
+ combinations = _ref2.combinations,
57694
+ disclaimer = _ref2.disclaimer,
57695
+ sideProps = _ref2.sideProps,
57696
+ SideIcon = _ref2.SideIcon,
57697
+ _ref2$isSticky = _ref2.isSticky,
57698
+ isSticky = _ref2$isSticky === undefined ? false : _ref2$isSticky,
57699
+ _ref2$HTMLRenderer = _ref2.HTMLRenderer,
57700
+ HTMLRenderer = _ref2$HTMLRenderer === undefined ? DataHeader_BasicHTMLRenderer : _ref2$HTMLRenderer;
57684
57701
 
57685
57702
  var target = react_default.a.useRef(null);
57686
57703
 
@@ -57735,7 +57752,11 @@ var DataHeader_DataHeader = function DataHeader(_ref) {
57735
57752
  { className: classes.sideIconContainer },
57736
57753
  react_default.a.createElement(SideIcon, { sideProps: sideProps })
57737
57754
  ),
57738
- react_default.a.createElement(DataHeader_Flags, { classes: classes, content: es_propOr([], 'flags', title) })
57755
+ react_default.a.createElement(DataHeader_Flags, {
57756
+ classes: classes,
57757
+ HTMLRenderer: HTMLRenderer,
57758
+ content: es_propOr([], 'flags', title)
57759
+ })
57739
57760
  ),
57740
57761
  isWidthUp(T4_BREAKPOINTS.xs3) && subtitle && es_not(es_isEmpty(subtitle)) && react_default.a.createElement(
57741
57762
  'div',
@@ -57756,7 +57777,11 @@ var DataHeader_DataHeader = function DataHeader(_ref) {
57756
57777
  { variant: 'inherit' },
57757
57778
  sub.label
57758
57779
  ),
57759
- es_not(es_isEmpty(es_propOr([], 'flags', sub))) && react_default.a.createElement(DataHeader_Flags, { classes: classes, content: es_prop('flags', sub) }),
57780
+ es_not(es_isEmpty(es_propOr([], 'flags', sub))) && react_default.a.createElement(DataHeader_Flags, {
57781
+ classes: classes,
57782
+ HTMLRenderer: HTMLRenderer,
57783
+ content: es_prop('flags', sub)
57784
+ }),
57760
57785
  es_lt(index + 1, subtitleLength) && react_default.a.createElement(
57761
57786
  'svg',
57762
57787
  { width: '24', height: '8' },
@@ -57783,7 +57808,11 @@ var DataHeader_DataHeader = function DataHeader(_ref) {
57783
57808
  { variant: 'inherit' },
57784
57809
  comb.label
57785
57810
  ),
57786
- es_not(es_isEmpty(es_propOr([], 'flags', comb))) && react_default.a.createElement(DataHeader_Flags, { classes: classes, content: es_prop('flags', comb) }),
57811
+ es_not(es_isEmpty(es_propOr([], 'flags', comb))) && react_default.a.createElement(DataHeader_Flags, {
57812
+ classes: classes,
57813
+ HTMLRenderer: HTMLRenderer,
57814
+ content: es_prop('flags', comb)
57815
+ }),
57787
57816
  es_lt(index + 1, combinationsLength) && react_default.a.createElement(
57788
57817
  'svg',
57789
57818
  { width: '24', height: '8' },
@@ -57807,7 +57836,7 @@ var DataHeader_DataHeader = function DataHeader(_ref) {
57807
57836
  { className: classes.children },
57808
57837
  es_not(es_isEmpty(reducedContent)) && react_default.a.createElement(
57809
57838
  DataHeader_TooltipHeader,
57810
- { classes: classes, content: reducedContent },
57839
+ { classes: classes, content: reducedContent, HTMLRenderer: HTMLRenderer },
57811
57840
  react_default.a.createElement(Info_default.a, { className: classes.infoIcon })
57812
57841
  ),
57813
57842
  children
@@ -57845,7 +57874,8 @@ DataHeader_DataHeader.propTypes = {
57845
57874
  SideIcon: prop_types_default.a.func,
57846
57875
  disclaimer: prop_types_default.a.oneOfType([prop_types_default.a.string, prop_types_default.a.element]),
57847
57876
  children: prop_types_default.a.node,
57848
- isSticky: prop_types_default.a.bool
57877
+ isSticky: prop_types_default.a.bool,
57878
+ HTMLRenderer: prop_types_default.a.func
57849
57879
  };
57850
57880
 
57851
57881
  /* harmony default export */ var src_DataHeader_DataHeader = (DataHeader_DataHeader);