@codecademy/gamut 67.6.3-alpha.86116a.0 → 67.6.3-alpha.c15718.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.
Files changed (41) hide show
  1. package/dist/BarChart/Bar/elements.d.ts +1412 -0
  2. package/dist/BarChart/Bar/elements.js +105 -0
  3. package/dist/BarChart/Bar/index.d.ts +6 -0
  4. package/dist/BarChart/Bar/index.js +128 -0
  5. package/dist/BarChart/BarChartProvider.d.ts +12 -0
  6. package/dist/BarChart/BarChartProvider.js +16 -0
  7. package/dist/BarChart/index.d.ts +3 -0
  8. package/dist/BarChart/index.js +69 -0
  9. package/dist/BarChart/layout/GridLines.d.ts +7 -0
  10. package/dist/BarChart/layout/GridLines.js +77 -0
  11. package/dist/BarChart/layout/ScaleChartHeader.d.ts +10 -0
  12. package/dist/BarChart/layout/ScaleChartHeader.js +88 -0
  13. package/dist/BarChart/layout/VerticalSpacer.d.ts +6 -0
  14. package/dist/BarChart/layout/VerticalSpacer.js +48 -0
  15. package/dist/BarChart/shared/elements.d.ts +7 -0
  16. package/dist/BarChart/shared/elements.js +12 -0
  17. package/dist/BarChart/shared/styles.d.ts +3 -0
  18. package/dist/BarChart/shared/styles.js +3 -0
  19. package/dist/BarChart/shared/types.d.ts +56 -0
  20. package/dist/BarChart/shared/types.js +1 -0
  21. package/dist/BarChart/utils/hooks.d.ts +36 -0
  22. package/dist/BarChart/utils/hooks.js +61 -0
  23. package/dist/BarChart/utils/index.d.ts +83 -0
  24. package/dist/BarChart/utils/index.js +162 -0
  25. package/dist/ConnectedForm/ConnectedFormGroup.d.ts +0 -5
  26. package/dist/ConnectedForm/ConnectedFormGroup.js +1 -1
  27. package/dist/Form/elements/FormGroupLabel.js +2 -8
  28. package/dist/GridForm/GridFormInputGroup/__fixtures__/renderers.d.ts +0 -4
  29. package/dist/GridForm/types.d.ts +0 -5
  30. package/dist/Tip/InfoTip/InfoTipButton.js +2 -5
  31. package/dist/Tip/InfoTip/elements.d.ts +12 -0
  32. package/dist/Tip/InfoTip/elements.js +9 -0
  33. package/dist/Tip/InfoTip/index.d.ts +0 -18
  34. package/dist/Tip/InfoTip/index.js +66 -37
  35. package/dist/Tip/__tests__/helpers.d.ts +26 -5
  36. package/dist/Tip/shared/FloatingTip.js +3 -3
  37. package/dist/Tip/shared/InlineTip.js +1 -4
  38. package/dist/Tip/shared/types.d.ts +1 -1
  39. package/dist/index.d.ts +1 -0
  40. package/dist/index.js +1 -0
  41. package/package.json +2 -2
@@ -0,0 +1,105 @@
1
+ import _styled from "@emotion/styled/base";
2
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
3
+ import { css, styledOptions } from '@codecademy/gamut-styles';
4
+ import { motion } from 'framer-motion';
5
+ import { Box } from '../../Box';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ const rowBaseStyles = css({
8
+ display: 'flex',
9
+ alignItems: 'center',
10
+ width: '100%',
11
+ gap: 0,
12
+ position: 'relative',
13
+ bg: 'transparent',
14
+ border: 'none',
15
+ textDecoration: 'none',
16
+ cursor: 'inherit',
17
+ '&:focus': {
18
+ outline: 'none'
19
+ },
20
+ '&:focus-visible': {
21
+ outline: '2px solid',
22
+ outlineColor: 'primary',
23
+ outlineOffset: '2px'
24
+ }
25
+ });
26
+ const interactiveStyles = css({
27
+ cursor: 'pointer',
28
+ '&:hover': {
29
+ bg: 'background-hover'
30
+ }
31
+ });
32
+ export const RowWrapper = /*#__PURE__*/_styled('div', _extends({}, {
33
+ target: "e1lnm2ux5",
34
+ label: "RowWrapper"
35
+ }, styledOptions()))(rowBaseStyles, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9CYXIvZWxlbWVudHMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlDMEIiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL0JhckNoYXJ0L0Jhci9lbGVtZW50cy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MsIHN0eWxlZE9wdGlvbnMgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgbW90aW9uIH0gZnJvbSAnZnJhbWVyLW1vdGlvbic7XG5cbmltcG9ydCB7IEJveCB9IGZyb20gJy4uLy4uL0JveCc7XG5cbmNvbnN0IHJvd0Jhc2VTdHlsZXMgPSBjc3Moe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICB3aWR0aDogJzEwMCUnLFxuICBnYXA6IDAsXG4gIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICBiZzogJ3RyYW5zcGFyZW50JyxcbiAgYm9yZGVyOiAnbm9uZScsXG4gIHRleHREZWNvcmF0aW9uOiAnbm9uZScsXG4gIGN1cnNvcjogJ2luaGVyaXQnLFxuICAnJjpmb2N1cyc6IHtcbiAgICBvdXRsaW5lOiAnbm9uZScsXG4gIH0sXG4gICcmOmZvY3VzLXZpc2libGUnOiB7XG4gICAgb3V0bGluZTogJzJweCBzb2xpZCcsXG4gICAgb3V0bGluZUNvbG9yOiAncHJpbWFyeScsXG4gICAgb3V0bGluZU9mZnNldDogJzJweCcsXG4gIH0sXG59KTtcblxuY29uc3QgaW50ZXJhY3RpdmVTdHlsZXMgPSBjc3Moe1xuICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgJyY6aG92ZXInOiB7XG4gICAgYmc6ICdiYWNrZ3JvdW5kLWhvdmVyJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUm93V3JhcHBlciA9IHN0eWxlZCgnZGl2Jywgc3R5bGVkT3B0aW9uczwnZGl2Jz4oKSkocm93QmFzZVN0eWxlcyk7XG5leHBvcnQgY29uc3QgUm93QnV0dG9uID0gc3R5bGVkKCdidXR0b24nLCBzdHlsZWRPcHRpb25zPCdidXR0b24nPigpKShcbiAgcm93QmFzZVN0eWxlcyxcbiAgaW50ZXJhY3RpdmVTdHlsZXNcbik7XG5leHBvcnQgY29uc3QgUm93QW5jaG9yID0gc3R5bGVkKCdhJywgc3R5bGVkT3B0aW9uczwnYSc+KCkpKFxuICByb3dCYXNlU3R5bGVzLFxuICBpbnRlcmFjdGl2ZVN0eWxlc1xuKTtcblxuLyoqXG4gKiBDb250YWluZXIgZm9yIGJhcnMgd2l0aCByZXNwb25zaXZlIGhlaWdodFxuICovXG5leHBvcnQgY29uc3QgQmFyV3JhcHBlciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgZmxleDogMSxcbiAgICBoZWlnaHQ6IHsgXzogMTIsIHNtOiAyMCB9LFxuICAgIGJvcmRlclJhZGl1czogeyBfOiAnbWQnLCBzbTogJ3hsJyB9LFxuICB9KVxuKTtcblxuY29uc3QgYmFzZUJhclN0eWxlcyA9IHtcbiAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIGJvcmRlcjogMSxcbiAgYm9yZGVyQ29sb3I6ICdib3JkZXItcHJpbWFyeScsXG4gIGJvcmRlclJhZGl1czogJ2luaGVyaXQnLFxuICBkaXNwbGF5OiAnZmxleCcsXG4gIGhlaWdodDogJzEwMCUnLFxuICBsZWZ0OiAwLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbn0gYXMgY29uc3Q7XG5cbi8qKlxuICogQW5pbWF0ZWQgYmFyIGVsZW1lbnQgZm9yIGJhY2tncm91bmQvdG90YWwgdmFsdWUgZGlzcGxheVxuICovXG5leHBvcnQgY29uc3QgQmFja2dyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG4vKipcbiAqIEZvcmVncm91bmQgYmFyIGZvciBzdGFja2VkIGRpc3BsYXkgKHByb2dyZXNzIHZhbHVlKVxuICovXG5leHBvcnQgY29uc3QgRm9yZWdyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG5leHBvcnQgY29uc3QgYmFyTGlzdEl0ZW1QYWRkaW5nID0gMTY7XG5cbmV4cG9ydCBjb25zdCBCYXJMaXN0SXRlbSA9ICh7IGNoaWxkcmVuIH06IHsgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPEJveCBhcz1cImxpXCIgcD17YmFyTGlzdEl0ZW1QYWRkaW5nfT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0JveD5cbiAgKTtcbn07XG4iXX0= */");
36
+ export const RowButton = /*#__PURE__*/_styled('button', _extends({}, {
37
+ target: "e1lnm2ux4",
38
+ label: "RowButton"
39
+ }, styledOptions()))(rowBaseStyles, interactiveStyles, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9CYXIvZWxlbWVudHMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtDeUIiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL0JhckNoYXJ0L0Jhci9lbGVtZW50cy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MsIHN0eWxlZE9wdGlvbnMgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgbW90aW9uIH0gZnJvbSAnZnJhbWVyLW1vdGlvbic7XG5cbmltcG9ydCB7IEJveCB9IGZyb20gJy4uLy4uL0JveCc7XG5cbmNvbnN0IHJvd0Jhc2VTdHlsZXMgPSBjc3Moe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICB3aWR0aDogJzEwMCUnLFxuICBnYXA6IDAsXG4gIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICBiZzogJ3RyYW5zcGFyZW50JyxcbiAgYm9yZGVyOiAnbm9uZScsXG4gIHRleHREZWNvcmF0aW9uOiAnbm9uZScsXG4gIGN1cnNvcjogJ2luaGVyaXQnLFxuICAnJjpmb2N1cyc6IHtcbiAgICBvdXRsaW5lOiAnbm9uZScsXG4gIH0sXG4gICcmOmZvY3VzLXZpc2libGUnOiB7XG4gICAgb3V0bGluZTogJzJweCBzb2xpZCcsXG4gICAgb3V0bGluZUNvbG9yOiAncHJpbWFyeScsXG4gICAgb3V0bGluZU9mZnNldDogJzJweCcsXG4gIH0sXG59KTtcblxuY29uc3QgaW50ZXJhY3RpdmVTdHlsZXMgPSBjc3Moe1xuICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgJyY6aG92ZXInOiB7XG4gICAgYmc6ICdiYWNrZ3JvdW5kLWhvdmVyJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUm93V3JhcHBlciA9IHN0eWxlZCgnZGl2Jywgc3R5bGVkT3B0aW9uczwnZGl2Jz4oKSkocm93QmFzZVN0eWxlcyk7XG5leHBvcnQgY29uc3QgUm93QnV0dG9uID0gc3R5bGVkKCdidXR0b24nLCBzdHlsZWRPcHRpb25zPCdidXR0b24nPigpKShcbiAgcm93QmFzZVN0eWxlcyxcbiAgaW50ZXJhY3RpdmVTdHlsZXNcbik7XG5leHBvcnQgY29uc3QgUm93QW5jaG9yID0gc3R5bGVkKCdhJywgc3R5bGVkT3B0aW9uczwnYSc+KCkpKFxuICByb3dCYXNlU3R5bGVzLFxuICBpbnRlcmFjdGl2ZVN0eWxlc1xuKTtcblxuLyoqXG4gKiBDb250YWluZXIgZm9yIGJhcnMgd2l0aCByZXNwb25zaXZlIGhlaWdodFxuICovXG5leHBvcnQgY29uc3QgQmFyV3JhcHBlciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgZmxleDogMSxcbiAgICBoZWlnaHQ6IHsgXzogMTIsIHNtOiAyMCB9LFxuICAgIGJvcmRlclJhZGl1czogeyBfOiAnbWQnLCBzbTogJ3hsJyB9LFxuICB9KVxuKTtcblxuY29uc3QgYmFzZUJhclN0eWxlcyA9IHtcbiAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIGJvcmRlcjogMSxcbiAgYm9yZGVyQ29sb3I6ICdib3JkZXItcHJpbWFyeScsXG4gIGJvcmRlclJhZGl1czogJ2luaGVyaXQnLFxuICBkaXNwbGF5OiAnZmxleCcsXG4gIGhlaWdodDogJzEwMCUnLFxuICBsZWZ0OiAwLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbn0gYXMgY29uc3Q7XG5cbi8qKlxuICogQW5pbWF0ZWQgYmFyIGVsZW1lbnQgZm9yIGJhY2tncm91bmQvdG90YWwgdmFsdWUgZGlzcGxheVxuICovXG5leHBvcnQgY29uc3QgQmFja2dyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG4vKipcbiAqIEZvcmVncm91bmQgYmFyIGZvciBzdGFja2VkIGRpc3BsYXkgKHByb2dyZXNzIHZhbHVlKVxuICovXG5leHBvcnQgY29uc3QgRm9yZWdyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG5leHBvcnQgY29uc3QgYmFyTGlzdEl0ZW1QYWRkaW5nID0gMTY7XG5cbmV4cG9ydCBjb25zdCBCYXJMaXN0SXRlbSA9ICh7IGNoaWxkcmVuIH06IHsgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPEJveCBhcz1cImxpXCIgcD17YmFyTGlzdEl0ZW1QYWRkaW5nfT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0JveD5cbiAgKTtcbn07XG4iXX0= */");
40
+ export const RowAnchor = /*#__PURE__*/_styled('a', _extends({}, {
41
+ target: "e1lnm2ux3",
42
+ label: "RowAnchor"
43
+ }, styledOptions()))(rowBaseStyles, interactiveStyles, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9CYXIvZWxlbWVudHMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNDeUIiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL0JhckNoYXJ0L0Jhci9lbGVtZW50cy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MsIHN0eWxlZE9wdGlvbnMgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgbW90aW9uIH0gZnJvbSAnZnJhbWVyLW1vdGlvbic7XG5cbmltcG9ydCB7IEJveCB9IGZyb20gJy4uLy4uL0JveCc7XG5cbmNvbnN0IHJvd0Jhc2VTdHlsZXMgPSBjc3Moe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICB3aWR0aDogJzEwMCUnLFxuICBnYXA6IDAsXG4gIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICBiZzogJ3RyYW5zcGFyZW50JyxcbiAgYm9yZGVyOiAnbm9uZScsXG4gIHRleHREZWNvcmF0aW9uOiAnbm9uZScsXG4gIGN1cnNvcjogJ2luaGVyaXQnLFxuICAnJjpmb2N1cyc6IHtcbiAgICBvdXRsaW5lOiAnbm9uZScsXG4gIH0sXG4gICcmOmZvY3VzLXZpc2libGUnOiB7XG4gICAgb3V0bGluZTogJzJweCBzb2xpZCcsXG4gICAgb3V0bGluZUNvbG9yOiAncHJpbWFyeScsXG4gICAgb3V0bGluZU9mZnNldDogJzJweCcsXG4gIH0sXG59KTtcblxuY29uc3QgaW50ZXJhY3RpdmVTdHlsZXMgPSBjc3Moe1xuICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgJyY6aG92ZXInOiB7XG4gICAgYmc6ICdiYWNrZ3JvdW5kLWhvdmVyJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUm93V3JhcHBlciA9IHN0eWxlZCgnZGl2Jywgc3R5bGVkT3B0aW9uczwnZGl2Jz4oKSkocm93QmFzZVN0eWxlcyk7XG5leHBvcnQgY29uc3QgUm93QnV0dG9uID0gc3R5bGVkKCdidXR0b24nLCBzdHlsZWRPcHRpb25zPCdidXR0b24nPigpKShcbiAgcm93QmFzZVN0eWxlcyxcbiAgaW50ZXJhY3RpdmVTdHlsZXNcbik7XG5leHBvcnQgY29uc3QgUm93QW5jaG9yID0gc3R5bGVkKCdhJywgc3R5bGVkT3B0aW9uczwnYSc+KCkpKFxuICByb3dCYXNlU3R5bGVzLFxuICBpbnRlcmFjdGl2ZVN0eWxlc1xuKTtcblxuLyoqXG4gKiBDb250YWluZXIgZm9yIGJhcnMgd2l0aCByZXNwb25zaXZlIGhlaWdodFxuICovXG5leHBvcnQgY29uc3QgQmFyV3JhcHBlciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgZmxleDogMSxcbiAgICBoZWlnaHQ6IHsgXzogMTIsIHNtOiAyMCB9LFxuICAgIGJvcmRlclJhZGl1czogeyBfOiAnbWQnLCBzbTogJ3hsJyB9LFxuICB9KVxuKTtcblxuY29uc3QgYmFzZUJhclN0eWxlcyA9IHtcbiAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIGJvcmRlcjogMSxcbiAgYm9yZGVyQ29sb3I6ICdib3JkZXItcHJpbWFyeScsXG4gIGJvcmRlclJhZGl1czogJ2luaGVyaXQnLFxuICBkaXNwbGF5OiAnZmxleCcsXG4gIGhlaWdodDogJzEwMCUnLFxuICBsZWZ0OiAwLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbn0gYXMgY29uc3Q7XG5cbi8qKlxuICogQW5pbWF0ZWQgYmFyIGVsZW1lbnQgZm9yIGJhY2tncm91bmQvdG90YWwgdmFsdWUgZGlzcGxheVxuICovXG5leHBvcnQgY29uc3QgQmFja2dyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG4vKipcbiAqIEZvcmVncm91bmQgYmFyIGZvciBzdGFja2VkIGRpc3BsYXkgKHByb2dyZXNzIHZhbHVlKVxuICovXG5leHBvcnQgY29uc3QgRm9yZWdyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG5leHBvcnQgY29uc3QgYmFyTGlzdEl0ZW1QYWRkaW5nID0gMTY7XG5cbmV4cG9ydCBjb25zdCBCYXJMaXN0SXRlbSA9ICh7IGNoaWxkcmVuIH06IHsgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPEJveCBhcz1cImxpXCIgcD17YmFyTGlzdEl0ZW1QYWRkaW5nfT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0JveD5cbiAgKTtcbn07XG4iXX0= */");
44
+
45
+ /**
46
+ * Container for bars with responsive height
47
+ */
48
+ export const BarWrapper = /*#__PURE__*/_styled(Box, {
49
+ target: "e1lnm2ux2",
50
+ label: "BarWrapper"
51
+ })(css({
52
+ display: 'flex',
53
+ overflow: 'hidden',
54
+ position: 'relative',
55
+ alignItems: 'center',
56
+ flex: 1,
57
+ height: {
58
+ _: 12,
59
+ sm: 20
60
+ },
61
+ borderRadius: {
62
+ _: 'md',
63
+ sm: 'xl'
64
+ }
65
+ }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9CYXIvZWxlbWVudHMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThDMEIiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL0JhckNoYXJ0L0Jhci9lbGVtZW50cy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MsIHN0eWxlZE9wdGlvbnMgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgbW90aW9uIH0gZnJvbSAnZnJhbWVyLW1vdGlvbic7XG5cbmltcG9ydCB7IEJveCB9IGZyb20gJy4uLy4uL0JveCc7XG5cbmNvbnN0IHJvd0Jhc2VTdHlsZXMgPSBjc3Moe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICB3aWR0aDogJzEwMCUnLFxuICBnYXA6IDAsXG4gIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICBiZzogJ3RyYW5zcGFyZW50JyxcbiAgYm9yZGVyOiAnbm9uZScsXG4gIHRleHREZWNvcmF0aW9uOiAnbm9uZScsXG4gIGN1cnNvcjogJ2luaGVyaXQnLFxuICAnJjpmb2N1cyc6IHtcbiAgICBvdXRsaW5lOiAnbm9uZScsXG4gIH0sXG4gICcmOmZvY3VzLXZpc2libGUnOiB7XG4gICAgb3V0bGluZTogJzJweCBzb2xpZCcsXG4gICAgb3V0bGluZUNvbG9yOiAncHJpbWFyeScsXG4gICAgb3V0bGluZU9mZnNldDogJzJweCcsXG4gIH0sXG59KTtcblxuY29uc3QgaW50ZXJhY3RpdmVTdHlsZXMgPSBjc3Moe1xuICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgJyY6aG92ZXInOiB7XG4gICAgYmc6ICdiYWNrZ3JvdW5kLWhvdmVyJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUm93V3JhcHBlciA9IHN0eWxlZCgnZGl2Jywgc3R5bGVkT3B0aW9uczwnZGl2Jz4oKSkocm93QmFzZVN0eWxlcyk7XG5leHBvcnQgY29uc3QgUm93QnV0dG9uID0gc3R5bGVkKCdidXR0b24nLCBzdHlsZWRPcHRpb25zPCdidXR0b24nPigpKShcbiAgcm93QmFzZVN0eWxlcyxcbiAgaW50ZXJhY3RpdmVTdHlsZXNcbik7XG5leHBvcnQgY29uc3QgUm93QW5jaG9yID0gc3R5bGVkKCdhJywgc3R5bGVkT3B0aW9uczwnYSc+KCkpKFxuICByb3dCYXNlU3R5bGVzLFxuICBpbnRlcmFjdGl2ZVN0eWxlc1xuKTtcblxuLyoqXG4gKiBDb250YWluZXIgZm9yIGJhcnMgd2l0aCByZXNwb25zaXZlIGhlaWdodFxuICovXG5leHBvcnQgY29uc3QgQmFyV3JhcHBlciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgZmxleDogMSxcbiAgICBoZWlnaHQ6IHsgXzogMTIsIHNtOiAyMCB9LFxuICAgIGJvcmRlclJhZGl1czogeyBfOiAnbWQnLCBzbTogJ3hsJyB9LFxuICB9KVxuKTtcblxuY29uc3QgYmFzZUJhclN0eWxlcyA9IHtcbiAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIGJvcmRlcjogMSxcbiAgYm9yZGVyQ29sb3I6ICdib3JkZXItcHJpbWFyeScsXG4gIGJvcmRlclJhZGl1czogJ2luaGVyaXQnLFxuICBkaXNwbGF5OiAnZmxleCcsXG4gIGhlaWdodDogJzEwMCUnLFxuICBsZWZ0OiAwLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbn0gYXMgY29uc3Q7XG5cbi8qKlxuICogQW5pbWF0ZWQgYmFyIGVsZW1lbnQgZm9yIGJhY2tncm91bmQvdG90YWwgdmFsdWUgZGlzcGxheVxuICovXG5leHBvcnQgY29uc3QgQmFja2dyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG4vKipcbiAqIEZvcmVncm91bmQgYmFyIGZvciBzdGFja2VkIGRpc3BsYXkgKHByb2dyZXNzIHZhbHVlKVxuICovXG5leHBvcnQgY29uc3QgRm9yZWdyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG5leHBvcnQgY29uc3QgYmFyTGlzdEl0ZW1QYWRkaW5nID0gMTY7XG5cbmV4cG9ydCBjb25zdCBCYXJMaXN0SXRlbSA9ICh7IGNoaWxkcmVuIH06IHsgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPEJveCBhcz1cImxpXCIgcD17YmFyTGlzdEl0ZW1QYWRkaW5nfT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0JveD5cbiAgKTtcbn07XG4iXX0= */");
66
+ const baseBarStyles = {
67
+ alignItems: 'center',
68
+ border: 1,
69
+ borderColor: 'border-primary',
70
+ borderRadius: 'inherit',
71
+ display: 'flex',
72
+ height: '100%',
73
+ left: 0,
74
+ position: 'absolute'
75
+ };
76
+
77
+ /**
78
+ * Animated bar element for background/total value display
79
+ */
80
+ export const BackgroundBar = /*#__PURE__*/_styled(motion.create(Box), {
81
+ target: "e1lnm2ux1",
82
+ label: "BackgroundBar"
83
+ })(css({
84
+ ...baseBarStyles
85
+ }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9CYXIvZWxlbWVudHMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdFNkIiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL0JhckNoYXJ0L0Jhci9lbGVtZW50cy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MsIHN0eWxlZE9wdGlvbnMgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgbW90aW9uIH0gZnJvbSAnZnJhbWVyLW1vdGlvbic7XG5cbmltcG9ydCB7IEJveCB9IGZyb20gJy4uLy4uL0JveCc7XG5cbmNvbnN0IHJvd0Jhc2VTdHlsZXMgPSBjc3Moe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICB3aWR0aDogJzEwMCUnLFxuICBnYXA6IDAsXG4gIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICBiZzogJ3RyYW5zcGFyZW50JyxcbiAgYm9yZGVyOiAnbm9uZScsXG4gIHRleHREZWNvcmF0aW9uOiAnbm9uZScsXG4gIGN1cnNvcjogJ2luaGVyaXQnLFxuICAnJjpmb2N1cyc6IHtcbiAgICBvdXRsaW5lOiAnbm9uZScsXG4gIH0sXG4gICcmOmZvY3VzLXZpc2libGUnOiB7XG4gICAgb3V0bGluZTogJzJweCBzb2xpZCcsXG4gICAgb3V0bGluZUNvbG9yOiAncHJpbWFyeScsXG4gICAgb3V0bGluZU9mZnNldDogJzJweCcsXG4gIH0sXG59KTtcblxuY29uc3QgaW50ZXJhY3RpdmVTdHlsZXMgPSBjc3Moe1xuICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgJyY6aG92ZXInOiB7XG4gICAgYmc6ICdiYWNrZ3JvdW5kLWhvdmVyJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUm93V3JhcHBlciA9IHN0eWxlZCgnZGl2Jywgc3R5bGVkT3B0aW9uczwnZGl2Jz4oKSkocm93QmFzZVN0eWxlcyk7XG5leHBvcnQgY29uc3QgUm93QnV0dG9uID0gc3R5bGVkKCdidXR0b24nLCBzdHlsZWRPcHRpb25zPCdidXR0b24nPigpKShcbiAgcm93QmFzZVN0eWxlcyxcbiAgaW50ZXJhY3RpdmVTdHlsZXNcbik7XG5leHBvcnQgY29uc3QgUm93QW5jaG9yID0gc3R5bGVkKCdhJywgc3R5bGVkT3B0aW9uczwnYSc+KCkpKFxuICByb3dCYXNlU3R5bGVzLFxuICBpbnRlcmFjdGl2ZVN0eWxlc1xuKTtcblxuLyoqXG4gKiBDb250YWluZXIgZm9yIGJhcnMgd2l0aCByZXNwb25zaXZlIGhlaWdodFxuICovXG5leHBvcnQgY29uc3QgQmFyV3JhcHBlciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgZmxleDogMSxcbiAgICBoZWlnaHQ6IHsgXzogMTIsIHNtOiAyMCB9LFxuICAgIGJvcmRlclJhZGl1czogeyBfOiAnbWQnLCBzbTogJ3hsJyB9LFxuICB9KVxuKTtcblxuY29uc3QgYmFzZUJhclN0eWxlcyA9IHtcbiAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIGJvcmRlcjogMSxcbiAgYm9yZGVyQ29sb3I6ICdib3JkZXItcHJpbWFyeScsXG4gIGJvcmRlclJhZGl1czogJ2luaGVyaXQnLFxuICBkaXNwbGF5OiAnZmxleCcsXG4gIGhlaWdodDogJzEwMCUnLFxuICBsZWZ0OiAwLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbn0gYXMgY29uc3Q7XG5cbi8qKlxuICogQW5pbWF0ZWQgYmFyIGVsZW1lbnQgZm9yIGJhY2tncm91bmQvdG90YWwgdmFsdWUgZGlzcGxheVxuICovXG5leHBvcnQgY29uc3QgQmFja2dyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG4vKipcbiAqIEZvcmVncm91bmQgYmFyIGZvciBzdGFja2VkIGRpc3BsYXkgKHByb2dyZXNzIHZhbHVlKVxuICovXG5leHBvcnQgY29uc3QgRm9yZWdyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG5leHBvcnQgY29uc3QgYmFyTGlzdEl0ZW1QYWRkaW5nID0gMTY7XG5cbmV4cG9ydCBjb25zdCBCYXJMaXN0SXRlbSA9ICh7IGNoaWxkcmVuIH06IHsgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPEJveCBhcz1cImxpXCIgcD17YmFyTGlzdEl0ZW1QYWRkaW5nfT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0JveD5cbiAgKTtcbn07XG4iXX0= */");
86
+
87
+ /**
88
+ * Foreground bar for stacked display (progress value)
89
+ */
90
+ export const ForegroundBar = /*#__PURE__*/_styled(motion.create(Box), {
91
+ target: "e1lnm2ux0",
92
+ label: "ForegroundBar"
93
+ })(css({
94
+ ...baseBarStyles
95
+ }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9CYXIvZWxlbWVudHMudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlGNkIiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL0JhckNoYXJ0L0Jhci9lbGVtZW50cy50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MsIHN0eWxlZE9wdGlvbnMgfSBmcm9tICdAY29kZWNhZGVteS9nYW11dC1zdHlsZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgbW90aW9uIH0gZnJvbSAnZnJhbWVyLW1vdGlvbic7XG5cbmltcG9ydCB7IEJveCB9IGZyb20gJy4uLy4uL0JveCc7XG5cbmNvbnN0IHJvd0Jhc2VTdHlsZXMgPSBjc3Moe1xuICBkaXNwbGF5OiAnZmxleCcsXG4gIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICB3aWR0aDogJzEwMCUnLFxuICBnYXA6IDAsXG4gIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICBiZzogJ3RyYW5zcGFyZW50JyxcbiAgYm9yZGVyOiAnbm9uZScsXG4gIHRleHREZWNvcmF0aW9uOiAnbm9uZScsXG4gIGN1cnNvcjogJ2luaGVyaXQnLFxuICAnJjpmb2N1cyc6IHtcbiAgICBvdXRsaW5lOiAnbm9uZScsXG4gIH0sXG4gICcmOmZvY3VzLXZpc2libGUnOiB7XG4gICAgb3V0bGluZTogJzJweCBzb2xpZCcsXG4gICAgb3V0bGluZUNvbG9yOiAncHJpbWFyeScsXG4gICAgb3V0bGluZU9mZnNldDogJzJweCcsXG4gIH0sXG59KTtcblxuY29uc3QgaW50ZXJhY3RpdmVTdHlsZXMgPSBjc3Moe1xuICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgJyY6aG92ZXInOiB7XG4gICAgYmc6ICdiYWNrZ3JvdW5kLWhvdmVyJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgUm93V3JhcHBlciA9IHN0eWxlZCgnZGl2Jywgc3R5bGVkT3B0aW9uczwnZGl2Jz4oKSkocm93QmFzZVN0eWxlcyk7XG5leHBvcnQgY29uc3QgUm93QnV0dG9uID0gc3R5bGVkKCdidXR0b24nLCBzdHlsZWRPcHRpb25zPCdidXR0b24nPigpKShcbiAgcm93QmFzZVN0eWxlcyxcbiAgaW50ZXJhY3RpdmVTdHlsZXNcbik7XG5leHBvcnQgY29uc3QgUm93QW5jaG9yID0gc3R5bGVkKCdhJywgc3R5bGVkT3B0aW9uczwnYSc+KCkpKFxuICByb3dCYXNlU3R5bGVzLFxuICBpbnRlcmFjdGl2ZVN0eWxlc1xuKTtcblxuLyoqXG4gKiBDb250YWluZXIgZm9yIGJhcnMgd2l0aCByZXNwb25zaXZlIGhlaWdodFxuICovXG5leHBvcnQgY29uc3QgQmFyV3JhcHBlciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgZmxleDogMSxcbiAgICBoZWlnaHQ6IHsgXzogMTIsIHNtOiAyMCB9LFxuICAgIGJvcmRlclJhZGl1czogeyBfOiAnbWQnLCBzbTogJ3hsJyB9LFxuICB9KVxuKTtcblxuY29uc3QgYmFzZUJhclN0eWxlcyA9IHtcbiAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gIGJvcmRlcjogMSxcbiAgYm9yZGVyQ29sb3I6ICdib3JkZXItcHJpbWFyeScsXG4gIGJvcmRlclJhZGl1czogJ2luaGVyaXQnLFxuICBkaXNwbGF5OiAnZmxleCcsXG4gIGhlaWdodDogJzEwMCUnLFxuICBsZWZ0OiAwLFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbn0gYXMgY29uc3Q7XG5cbi8qKlxuICogQW5pbWF0ZWQgYmFyIGVsZW1lbnQgZm9yIGJhY2tncm91bmQvdG90YWwgdmFsdWUgZGlzcGxheVxuICovXG5leHBvcnQgY29uc3QgQmFja2dyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG4vKipcbiAqIEZvcmVncm91bmQgYmFyIGZvciBzdGFja2VkIGRpc3BsYXkgKHByb2dyZXNzIHZhbHVlKVxuICovXG5leHBvcnQgY29uc3QgRm9yZWdyb3VuZEJhciA9IHN0eWxlZChtb3Rpb24uY3JlYXRlKEJveCkpKFxuICBjc3Moe1xuICAgIC4uLmJhc2VCYXJTdHlsZXMsXG4gIH0pXG4pO1xuXG5leHBvcnQgY29uc3QgYmFyTGlzdEl0ZW1QYWRkaW5nID0gMTY7XG5cbmV4cG9ydCBjb25zdCBCYXJMaXN0SXRlbSA9ICh7IGNoaWxkcmVuIH06IHsgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPEJveCBhcz1cImxpXCIgcD17YmFyTGlzdEl0ZW1QYWRkaW5nfT5cbiAgICAgIHtjaGlsZHJlbn1cbiAgICA8L0JveD5cbiAgKTtcbn07XG4iXX0= */");
96
+ export const barListItemPadding = 16;
97
+ export const BarListItem = ({
98
+ children
99
+ }) => {
100
+ return /*#__PURE__*/_jsx(Box, {
101
+ as: "li",
102
+ p: barListItemPadding,
103
+ children: children
104
+ });
105
+ };
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import { BarProps } from '../shared/types';
3
+ export interface BarRowProps extends BarProps {
4
+ index?: number;
5
+ }
6
+ export declare const Bar: import("react").ForwardRefExoticComponent<BarRowProps & import("react").RefAttributes<HTMLDivElement | HTMLAnchorElement | HTMLButtonElement>>;
@@ -0,0 +1,128 @@
1
+ import { forwardRef } from 'react';
2
+ import { FlexBox } from '../../Box';
3
+ import { Text } from '../../Typography';
4
+ import { labelAreaTotalWidth, minBarWidth, rightSpacerWidth } from '../shared/styles';
5
+ import { calculateBarWidth, getValuesSummary, useBarChartContext } from '../utils';
6
+ import { BackgroundBar, BarListItem, barListItemPadding, BarWrapper, ForegroundBar, RowAnchor, RowButton, RowWrapper } from './elements';
7
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
8
+ export const Bar = /*#__PURE__*/forwardRef(({
9
+ yLabel,
10
+ seriesOneValue,
11
+ seriesTwoValue,
12
+ icon: Icon,
13
+ onClick,
14
+ href,
15
+ index = 0
16
+ }, ref) => {
17
+ const {
18
+ minRange,
19
+ maxRange,
20
+ unit,
21
+ styleConfig,
22
+ animate
23
+ } = useBarChartContext();
24
+ const isStacked = seriesTwoValue !== undefined;
25
+ const displayValue = isStacked ? seriesTwoValue : seriesOneValue;
26
+ const backgroundBarWidth = calculateBarWidth({
27
+ value: displayValue,
28
+ minRange,
29
+ maxRange
30
+ });
31
+ const foregroundBarWidth = isStacked ? calculateBarWidth({
32
+ value: seriesOneValue,
33
+ minRange,
34
+ maxRange
35
+ }) : 0;
36
+ const bgWidthStr = `${Math.max(minBarWidth, backgroundBarWidth)}%`;
37
+ const fgWidthStr = `${Math.max(minBarWidth, foregroundBarWidth)}%`;
38
+ const valuesSummary = getValuesSummary({
39
+ yLabel,
40
+ seriesOneValue,
41
+ seriesTwoValue,
42
+ unit
43
+ });
44
+ const animationDelay = animate ? index * 0.1 : 0;
45
+ const rowContent = /*#__PURE__*/_jsxs(_Fragment, {
46
+ children: [/*#__PURE__*/_jsxs(FlexBox, {
47
+ alignItems: "center",
48
+ color: styleConfig.textColor,
49
+ flexShrink: 0,
50
+ pr: 24,
51
+ width: labelAreaTotalWidth - barListItemPadding,
52
+ children: [Icon && /*#__PURE__*/_jsx(Icon, {
53
+ mr: 12,
54
+ size: 24
55
+ }), /*#__PURE__*/_jsx(Text, {
56
+ fontWeight: "bold",
57
+ truncate: "ellipsis",
58
+ truncateLines: 1,
59
+ children: yLabel
60
+ })]
61
+ }), /*#__PURE__*/_jsxs(BarWrapper, {
62
+ children: [/*#__PURE__*/_jsx(BackgroundBar, {
63
+ animate: animate ? {
64
+ width: bgWidthStr
65
+ } : undefined,
66
+ bg: styleConfig.backgroundBarColor,
67
+ "data-testid": "background-bar",
68
+ initial: animate ? {
69
+ width: '0%'
70
+ } : undefined,
71
+ transition: {
72
+ duration: 0.5,
73
+ delay: animationDelay
74
+ },
75
+ width: !animate ? bgWidthStr : undefined
76
+ }), isStacked && /*#__PURE__*/_jsx(ForegroundBar, {
77
+ animate: animate ? {
78
+ width: fgWidthStr
79
+ } : undefined,
80
+ bg: styleConfig.foregroundBarColor,
81
+ "data-testid": "foreground-bar",
82
+ initial: animate ? {
83
+ width: '0%'
84
+ } : undefined,
85
+ transition: {
86
+ duration: 0.5,
87
+ delay: animationDelay + 0.25
88
+ },
89
+ width: !animate ? fgWidthStr : undefined
90
+ })]
91
+ }), /*#__PURE__*/_jsx(FlexBox, {
92
+ alignItems: "center",
93
+ flexShrink: 0,
94
+ justifyContent: "flex-end",
95
+ pl: 24,
96
+ width: rightSpacerWidth - barListItemPadding,
97
+ children: /*#__PURE__*/_jsxs(Text, {
98
+ color: styleConfig.textColor,
99
+ variant: "p-small",
100
+ children: [displayValue.toLocaleString(), unit && ` ${unit}`]
101
+ })
102
+ })]
103
+ });
104
+ const content = href ? /*#__PURE__*/_jsx(RowAnchor, {
105
+ "aria-label": valuesSummary,
106
+ href: href,
107
+ ref: ref,
108
+ children: rowContent
109
+ }) : onClick ? /*#__PURE__*/_jsx(RowButton, {
110
+ "aria-label": valuesSummary,
111
+ ref: ref,
112
+ type: "button",
113
+ onClick: onClick,
114
+ onKeyDown: e => {
115
+ if (e.key === 'Enter') {
116
+ onClick(e);
117
+ }
118
+ },
119
+ children: rowContent
120
+ }) : /*#__PURE__*/_jsx(RowWrapper, {
121
+ "aria-label": valuesSummary,
122
+ ref: ref,
123
+ children: rowContent
124
+ });
125
+ return /*#__PURE__*/_jsx(BarListItem, {
126
+ children: content
127
+ });
128
+ });
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import { BarChartStyles } from './shared/types';
3
+ export interface BarChartContextProps {
4
+ minRange: number;
5
+ maxRange: number;
6
+ xScale: number;
7
+ unit: string;
8
+ styleConfig: Required<BarChartStyles>;
9
+ animate: boolean;
10
+ }
11
+ export declare const BarChartContext: import("react").Context<BarChartContextProps>;
12
+ export declare const BarChartProvider: import("react").Provider<BarChartContextProps>;
@@ -0,0 +1,16 @@
1
+ import { createContext } from 'react';
2
+ const defaultStyleConfig = {
3
+ textColor: 'text',
4
+ foregroundBarColor: 'feedback-warning',
5
+ backgroundBarColor: 'background-primary'
6
+ };
7
+ export const BarChartContext = /*#__PURE__*/createContext({
8
+ minRange: 0,
9
+ maxRange: 100,
10
+ xScale: 10,
11
+ unit: '',
12
+ styleConfig: defaultStyleConfig,
13
+ animate: false
14
+ });
15
+ BarChartContext.displayName = 'BarChartContext';
16
+ export const BarChartProvider = BarChartContext.Provider;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { BarChartProps } from './shared/types';
3
+ export declare const BarChart: React.FC<BarChartProps>;
@@ -0,0 +1,69 @@
1
+ import { useMemo } from 'react';
2
+ import { Box } from '../Box';
3
+ import { Bar } from './Bar';
4
+ import { BarChartProvider } from './BarChartProvider';
5
+ import { GridLines } from './layout/GridLines';
6
+ import { ScaleChartHeader } from './layout/ScaleChartHeader';
7
+ import { BarsList } from './shared/elements';
8
+ import { sortBars, useBarChart } from './utils';
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ export const BarChart = ({
11
+ 'aria-label': ariaLabel,
12
+ 'aria-labelledby': ariaLabelledBy,
13
+ animate = false,
14
+ barValues,
15
+ maxRange,
16
+ minRange,
17
+ order = 'ascending',
18
+ sortBy = 'none',
19
+ unit = '',
20
+ styleConfig,
21
+ xScale
22
+ }) => {
23
+ const contextValue = useBarChart({
24
+ minRange,
25
+ maxRange,
26
+ xScale,
27
+ unit,
28
+ styleConfig,
29
+ animate
30
+ });
31
+ const sortedBars = useMemo(() => sortBars({
32
+ bars: barValues,
33
+ sortBy,
34
+ order
35
+ }), [barValues, sortBy, order]);
36
+
37
+ // Calculate number of ticks for the scale header
38
+ const tickCount = Math.ceil((maxRange - minRange) / contextValue.xScale) + 1;
39
+ return /*#__PURE__*/_jsx(BarChartProvider, {
40
+ value: contextValue,
41
+ children: /*#__PURE__*/_jsxs(Box, {
42
+ position: "relative",
43
+ width: "100%",
44
+ children: [/*#__PURE__*/_jsx(ScaleChartHeader, {
45
+ labelCount: tickCount,
46
+ max: maxRange,
47
+ min: minRange
48
+ }), /*#__PURE__*/_jsxs(Box, {
49
+ position: "relative",
50
+ width: "100%",
51
+ children: [/*#__PURE__*/_jsx(GridLines, {
52
+ max: maxRange,
53
+ min: minRange,
54
+ tickCount: tickCount
55
+ }), /*#__PURE__*/_jsx(BarsList, {
56
+ "aria-label": ariaLabel,
57
+ "aria-labelledby": ariaLabelledBy,
58
+ children: sortedBars.map((bar, index) => {
59
+ const uniqueKey = `${bar.yLabel}-${bar.seriesOneValue}-${bar.seriesTwoValue ?? ''}`;
60
+ return /*#__PURE__*/_jsx(Bar, {
61
+ index: index,
62
+ ...bar
63
+ }, uniqueKey);
64
+ })
65
+ })]
66
+ })]
67
+ })
68
+ });
69
+ };
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export interface GridLinesProps {
3
+ tickCount: number;
4
+ min: number;
5
+ max: number;
6
+ }
7
+ export declare const GridLines: React.FC<GridLinesProps>;
@@ -0,0 +1,77 @@
1
+ import _styled from "@emotion/styled/base";
2
+ import { css } from '@codecademy/gamut-styles';
3
+ import { Box } from '../../Box';
4
+ import { useLabelPositions } from '../utils';
5
+ import { VerticalSpacer } from './VerticalSpacer';
6
+ import { jsx as _jsx } from "react/jsx-runtime";
7
+ const GridLineWrapper = /*#__PURE__*/_styled(Box, {
8
+ target: "ejng4zk2",
9
+ label: "GridLineWrapper"
10
+ })(css({
11
+ position: 'absolute',
12
+ top: 0,
13
+ bottom: 0,
14
+ left: 0,
15
+ right: 0,
16
+ pointerEvents: 'none',
17
+ zIndex: 0
18
+ }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9sYXlvdXQvR3JpZExpbmVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPd0IiLCJmaWxlIjoiLi4vLi4vLi4vc3JjL0JhckNoYXJ0L2xheW91dC9HcmlkTGluZXMudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgQm94IH0gZnJvbSAnLi4vLi4vQm94JztcbmltcG9ydCB7IHVzZUxhYmVsUG9zaXRpb25zIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgVmVydGljYWxTcGFjZXIgfSBmcm9tICcuL1ZlcnRpY2FsU3BhY2VyJztcblxuY29uc3QgR3JpZExpbmVXcmFwcGVyID0gc3R5bGVkKEJveCkoXG4gIGNzcyh7XG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgdG9wOiAwLFxuICAgIGJvdHRvbTogMCxcbiAgICBsZWZ0OiAwLFxuICAgIHJpZ2h0OiAwLFxuICAgIHBvaW50ZXJFdmVudHM6ICdub25lJyxcbiAgICB6SW5kZXg6IDAsXG4gIH0pXG4pO1xuXG5jb25zdCBHcmlkTGluZUNvbnRhaW5lciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGJvdHRvbTogMCxcbiAgICBkaXNwbGF5OiB7IF86ICdub25lJywgc206ICdibG9jaycgfSxcbiAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICB0b3A6IDAsXG4gICAgbGVmdDogMCxcbiAgICByaWdodDogMCxcbiAgICBib3JkZXJMZWZ0OiAxLFxuICAgIGJvcmRlclJpZ2h0OiAxLFxuICAgIGJvcmRlckNvbG9yOiAnYmFja2dyb3VuZC1kaXNhYmxlZCcsXG4gIH0pXG4pO1xuXG5jb25zdCBHcmlkTGluZSA9IHN0eWxlZChCb3gpPHsgcG9zaXRpb25QZXJjZW50OiBudW1iZXIgfT4oXG4gIGNzcyh7XG4gICAgYm9yZGVyTGVmdDogMSxcbiAgICBib3JkZXJDb2xvckxlZnQ6ICdiYWNrZ3JvdW5kLWRpc2FibGVkJyxcbiAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgICB0b3A6IDAsXG4gICAgd2lkdGg6IDAsXG4gIH0pLFxuICAoeyBwb3NpdGlvblBlcmNlbnQgfSkgPT4gKHtcbiAgICBsZWZ0OiBgJHtwb3NpdGlvblBlcmNlbnR9JWAsXG4gICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgtNTAlKScsXG4gIH0pXG4pO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdyaWRMaW5lc1Byb3BzIHtcbiAgdGlja0NvdW50OiBudW1iZXI7XG4gIG1pbjogbnVtYmVyO1xuICBtYXg6IG51bWJlcjtcbn1cblxuZXhwb3J0IGNvbnN0IEdyaWRMaW5lczogUmVhY3QuRkM8R3JpZExpbmVzUHJvcHM+ID0gKHtcbiAgdGlja0NvdW50LFxuICBtaW4sXG4gIG1heCxcbn0pID0+IHtcbiAgY29uc3QgbGFiZWxQb3NpdGlvbnMgPSB1c2VMYWJlbFBvc2l0aW9ucyh7IG1pbiwgbWF4LCBjb3VudDogdGlja0NvdW50IH0pO1xuXG4gIGNvbnN0IGxpbmVzID0gbGFiZWxQb3NpdGlvbnMubWFwKCh7IHBvc2l0aW9uUGVyY2VudCwgdmFsdWUgfSkgPT4gKFxuICAgIDxHcmlkTGluZVxuICAgICAgYXJpYS1oaWRkZW5cbiAgICAgIGtleT17YGdyaWRsaW5lLSR7dmFsdWV9LSR7cG9zaXRpb25QZXJjZW50fWB9XG4gICAgICBwb3NpdGlvblBlcmNlbnQ9e3Bvc2l0aW9uUGVyY2VudH1cbiAgICAvPlxuICApKTtcblxuICByZXR1cm4gKFxuICAgIDxHcmlkTGluZVdyYXBwZXIgYXJpYS1oaWRkZW4+XG4gICAgICA8VmVydGljYWxTcGFjZXI+XG4gICAgICAgIDxHcmlkTGluZUNvbnRhaW5lcj57bGluZXN9PC9HcmlkTGluZUNvbnRhaW5lcj5cbiAgICAgIDwvVmVydGljYWxTcGFjZXI+XG4gICAgPC9HcmlkTGluZVdyYXBwZXI+XG4gICk7XG59O1xuIl19 */");
19
+ const GridLineContainer = /*#__PURE__*/_styled(Box, {
20
+ target: "ejng4zk1",
21
+ label: "GridLineContainer"
22
+ })(css({
23
+ bottom: 0,
24
+ display: {
25
+ _: 'none',
26
+ sm: 'block'
27
+ },
28
+ position: 'absolute',
29
+ top: 0,
30
+ left: 0,
31
+ right: 0,
32
+ borderLeft: 1,
33
+ borderRight: 1,
34
+ borderColor: 'background-disabled'
35
+ }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9sYXlvdXQvR3JpZExpbmVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQjBCIiwiZmlsZSI6Ii4uLy4uLy4uL3NyYy9CYXJDaGFydC9sYXlvdXQvR3JpZExpbmVzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0LXN0eWxlcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmltcG9ydCB7IEJveCB9IGZyb20gJy4uLy4uL0JveCc7XG5pbXBvcnQgeyB1c2VMYWJlbFBvc2l0aW9ucyB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IFZlcnRpY2FsU3BhY2VyIH0gZnJvbSAnLi9WZXJ0aWNhbFNwYWNlcic7XG5cbmNvbnN0IEdyaWRMaW5lV3JhcHBlciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIHRvcDogMCxcbiAgICBib3R0b206IDAsXG4gICAgbGVmdDogMCxcbiAgICByaWdodDogMCxcbiAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsXG4gICAgekluZGV4OiAwLFxuICB9KVxuKTtcblxuY29uc3QgR3JpZExpbmVDb250YWluZXIgPSBzdHlsZWQoQm94KShcbiAgY3NzKHtcbiAgICBib3R0b206IDAsXG4gICAgZGlzcGxheTogeyBfOiAnbm9uZScsIHNtOiAnYmxvY2snIH0sXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgcmlnaHQ6IDAsXG4gICAgYm9yZGVyTGVmdDogMSxcbiAgICBib3JkZXJSaWdodDogMSxcbiAgICBib3JkZXJDb2xvcjogJ2JhY2tncm91bmQtZGlzYWJsZWQnLFxuICB9KVxuKTtcblxuY29uc3QgR3JpZExpbmUgPSBzdHlsZWQoQm94KTx7IHBvc2l0aW9uUGVyY2VudDogbnVtYmVyIH0+KFxuICBjc3Moe1xuICAgIGJvcmRlckxlZnQ6IDEsXG4gICAgYm9yZGVyQ29sb3JMZWZ0OiAnYmFja2dyb3VuZC1kaXNhYmxlZCcsXG4gICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgdG9wOiAwLFxuICAgIHdpZHRoOiAwLFxuICB9KSxcbiAgKHsgcG9zaXRpb25QZXJjZW50IH0pID0+ICh7XG4gICAgbGVmdDogYCR7cG9zaXRpb25QZXJjZW50fSVgLFxuICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTUwJSknLFxuICB9KVxuKTtcblxuZXhwb3J0IGludGVyZmFjZSBHcmlkTGluZXNQcm9wcyB7XG4gIHRpY2tDb3VudDogbnVtYmVyO1xuICBtaW46IG51bWJlcjtcbiAgbWF4OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjb25zdCBHcmlkTGluZXM6IFJlYWN0LkZDPEdyaWRMaW5lc1Byb3BzPiA9ICh7XG4gIHRpY2tDb3VudCxcbiAgbWluLFxuICBtYXgsXG59KSA9PiB7XG4gIGNvbnN0IGxhYmVsUG9zaXRpb25zID0gdXNlTGFiZWxQb3NpdGlvbnMoeyBtaW4sIG1heCwgY291bnQ6IHRpY2tDb3VudCB9KTtcblxuICBjb25zdCBsaW5lcyA9IGxhYmVsUG9zaXRpb25zLm1hcCgoeyBwb3NpdGlvblBlcmNlbnQsIHZhbHVlIH0pID0+IChcbiAgICA8R3JpZExpbmVcbiAgICAgIGFyaWEtaGlkZGVuXG4gICAgICBrZXk9e2BncmlkbGluZS0ke3ZhbHVlfS0ke3Bvc2l0aW9uUGVyY2VudH1gfVxuICAgICAgcG9zaXRpb25QZXJjZW50PXtwb3NpdGlvblBlcmNlbnR9XG4gICAgLz5cbiAgKSk7XG5cbiAgcmV0dXJuIChcbiAgICA8R3JpZExpbmVXcmFwcGVyIGFyaWEtaGlkZGVuPlxuICAgICAgPFZlcnRpY2FsU3BhY2VyPlxuICAgICAgICA8R3JpZExpbmVDb250YWluZXI+e2xpbmVzfTwvR3JpZExpbmVDb250YWluZXI+XG4gICAgICA8L1ZlcnRpY2FsU3BhY2VyPlxuICAgIDwvR3JpZExpbmVXcmFwcGVyPlxuICApO1xufTtcbiJdfQ== */");
36
+ const GridLine = /*#__PURE__*/_styled(Box, {
37
+ target: "ejng4zk0",
38
+ label: "GridLine"
39
+ })(css({
40
+ borderLeft: 1,
41
+ borderColorLeft: 'background-disabled',
42
+ height: '100%',
43
+ position: 'absolute',
44
+ top: 0,
45
+ width: 0
46
+ }), ({
47
+ positionPercent
48
+ }) => ({
49
+ left: `${positionPercent}%`,
50
+ transform: 'translateX(-50%)'
51
+ }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9sYXlvdXQvR3JpZExpbmVzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQ2lCIiwiZmlsZSI6Ii4uLy4uLy4uL3NyYy9CYXJDaGFydC9sYXlvdXQvR3JpZExpbmVzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0Bjb2RlY2FkZW15L2dhbXV0LXN0eWxlcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmltcG9ydCB7IEJveCB9IGZyb20gJy4uLy4uL0JveCc7XG5pbXBvcnQgeyB1c2VMYWJlbFBvc2l0aW9ucyB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IFZlcnRpY2FsU3BhY2VyIH0gZnJvbSAnLi9WZXJ0aWNhbFNwYWNlcic7XG5cbmNvbnN0IEdyaWRMaW5lV3JhcHBlciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIHRvcDogMCxcbiAgICBib3R0b206IDAsXG4gICAgbGVmdDogMCxcbiAgICByaWdodDogMCxcbiAgICBwb2ludGVyRXZlbnRzOiAnbm9uZScsXG4gICAgekluZGV4OiAwLFxuICB9KVxuKTtcblxuY29uc3QgR3JpZExpbmVDb250YWluZXIgPSBzdHlsZWQoQm94KShcbiAgY3NzKHtcbiAgICBib3R0b206IDAsXG4gICAgZGlzcGxheTogeyBfOiAnbm9uZScsIHNtOiAnYmxvY2snIH0sXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgdG9wOiAwLFxuICAgIGxlZnQ6IDAsXG4gICAgcmlnaHQ6IDAsXG4gICAgYm9yZGVyTGVmdDogMSxcbiAgICBib3JkZXJSaWdodDogMSxcbiAgICBib3JkZXJDb2xvcjogJ2JhY2tncm91bmQtZGlzYWJsZWQnLFxuICB9KVxuKTtcblxuY29uc3QgR3JpZExpbmUgPSBzdHlsZWQoQm94KTx7IHBvc2l0aW9uUGVyY2VudDogbnVtYmVyIH0+KFxuICBjc3Moe1xuICAgIGJvcmRlckxlZnQ6IDEsXG4gICAgYm9yZGVyQ29sb3JMZWZ0OiAnYmFja2dyb3VuZC1kaXNhYmxlZCcsXG4gICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgdG9wOiAwLFxuICAgIHdpZHRoOiAwLFxuICB9KSxcbiAgKHsgcG9zaXRpb25QZXJjZW50IH0pID0+ICh7XG4gICAgbGVmdDogYCR7cG9zaXRpb25QZXJjZW50fSVgLFxuICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTUwJSknLFxuICB9KVxuKTtcblxuZXhwb3J0IGludGVyZmFjZSBHcmlkTGluZXNQcm9wcyB7XG4gIHRpY2tDb3VudDogbnVtYmVyO1xuICBtaW46IG51bWJlcjtcbiAgbWF4OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjb25zdCBHcmlkTGluZXM6IFJlYWN0LkZDPEdyaWRMaW5lc1Byb3BzPiA9ICh7XG4gIHRpY2tDb3VudCxcbiAgbWluLFxuICBtYXgsXG59KSA9PiB7XG4gIGNvbnN0IGxhYmVsUG9zaXRpb25zID0gdXNlTGFiZWxQb3NpdGlvbnMoeyBtaW4sIG1heCwgY291bnQ6IHRpY2tDb3VudCB9KTtcblxuICBjb25zdCBsaW5lcyA9IGxhYmVsUG9zaXRpb25zLm1hcCgoeyBwb3NpdGlvblBlcmNlbnQsIHZhbHVlIH0pID0+IChcbiAgICA8R3JpZExpbmVcbiAgICAgIGFyaWEtaGlkZGVuXG4gICAgICBrZXk9e2BncmlkbGluZS0ke3ZhbHVlfS0ke3Bvc2l0aW9uUGVyY2VudH1gfVxuICAgICAgcG9zaXRpb25QZXJjZW50PXtwb3NpdGlvblBlcmNlbnR9XG4gICAgLz5cbiAgKSk7XG5cbiAgcmV0dXJuIChcbiAgICA8R3JpZExpbmVXcmFwcGVyIGFyaWEtaGlkZGVuPlxuICAgICAgPFZlcnRpY2FsU3BhY2VyPlxuICAgICAgICA8R3JpZExpbmVDb250YWluZXI+e2xpbmVzfTwvR3JpZExpbmVDb250YWluZXI+XG4gICAgICA8L1ZlcnRpY2FsU3BhY2VyPlxuICAgIDwvR3JpZExpbmVXcmFwcGVyPlxuICApO1xufTtcbiJdfQ== */");
52
+ export const GridLines = ({
53
+ tickCount,
54
+ min,
55
+ max
56
+ }) => {
57
+ const labelPositions = useLabelPositions({
58
+ min,
59
+ max,
60
+ count: tickCount
61
+ });
62
+ const lines = labelPositions.map(({
63
+ positionPercent,
64
+ value
65
+ }) => /*#__PURE__*/_jsx(GridLine, {
66
+ "aria-hidden": true,
67
+ positionPercent: positionPercent
68
+ }, `gridline-${value}-${positionPercent}`));
69
+ return /*#__PURE__*/_jsx(GridLineWrapper, {
70
+ "aria-hidden": true,
71
+ children: /*#__PURE__*/_jsx(VerticalSpacer, {
72
+ children: /*#__PURE__*/_jsx(GridLineContainer, {
73
+ children: lines
74
+ })
75
+ })
76
+ });
77
+ };
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ export interface ScaleChartHeaderProps {
3
+ /** Minimum value on the scale */
4
+ min: number;
5
+ /** Maximum value on the scale */
6
+ max: number;
7
+ /** Number of labels to display */
8
+ labelCount: number;
9
+ }
10
+ export declare const ScaleChartHeader: React.FC<ScaleChartHeaderProps>;
@@ -0,0 +1,88 @@
1
+ import _styled from "@emotion/styled/base";
2
+ import { css } from '@codecademy/gamut-styles';
3
+ import { Box } from '../../Box';
4
+ import { Text } from '../../Typography';
5
+ import { formatNumberUSCompact, useBarChartContext, useLabelPositions } from '../utils';
6
+ import { VerticalSpacer } from './VerticalSpacer';
7
+ import { jsx as _jsx } from "react/jsx-runtime";
8
+ const StyledLabelText = /*#__PURE__*/_styled(Text, {
9
+ target: "e1ssd1i12",
10
+ label: "StyledLabelText"
11
+ })(css({
12
+ position: 'absolute',
13
+ whiteSpace: 'nowrap',
14
+ margin: 0,
15
+ padding: 0
16
+ }), ({
17
+ positionPercent,
18
+ textAlign
19
+ }) => {
20
+ let transform = '';
21
+ if (textAlign === 'left') {
22
+ transform = 'translateX(0)';
23
+ } else if (textAlign === 'right') {
24
+ transform = 'translateX(-100%)';
25
+ } else {
26
+ transform = 'translateX(-50%)';
27
+ }
28
+ return {
29
+ left: `${positionPercent}%`,
30
+ transform
31
+ };
32
+ }, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9sYXlvdXQvU2NhbGVDaGFydEhlYWRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUJ3QiIsImZpbGUiOiIuLi8uLi8uLi9zcmMvQmFyQ2hhcnQvbGF5b3V0L1NjYWxlQ2hhcnRIZWFkZXIudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgQm94IH0gZnJvbSAnLi4vLi4vQm94JztcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi9UeXBvZ3JhcGh5JztcbmltcG9ydCB7XG4gIGZvcm1hdE51bWJlclVTQ29tcGFjdCxcbiAgdXNlQmFyQ2hhcnRDb250ZXh0LFxuICB1c2VMYWJlbFBvc2l0aW9ucyxcbn0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgVmVydGljYWxTcGFjZXIgfSBmcm9tICcuL1ZlcnRpY2FsU3BhY2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBTY2FsZUNoYXJ0SGVhZGVyUHJvcHMge1xuICAvKiogTWluaW11bSB2YWx1ZSBvbiB0aGUgc2NhbGUgKi9cbiAgbWluOiBudW1iZXI7XG4gIC8qKiBNYXhpbXVtIHZhbHVlIG9uIHRoZSBzY2FsZSAqL1xuICBtYXg6IG51bWJlcjtcbiAgLyoqIE51bWJlciBvZiBsYWJlbHMgdG8gZGlzcGxheSAqL1xuICBsYWJlbENvdW50OiBudW1iZXI7XG59XG5cbmNvbnN0IFN0eWxlZExhYmVsVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIHBvc2l0aW9uUGVyY2VudDogbnVtYmVyO1xuICB0ZXh0QWxpZ246ICdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0Jztcbn0+KFxuICBjc3Moe1xuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxuICAgIG1hcmdpbjogMCxcbiAgICBwYWRkaW5nOiAwLFxuICB9KSxcbiAgKHsgcG9zaXRpb25QZXJjZW50LCB0ZXh0QWxpZ24gfSkgPT4ge1xuICAgIGxldCB0cmFuc2Zvcm0gPSAnJztcbiAgICBpZiAodGV4dEFsaWduID09PSAnbGVmdCcpIHtcbiAgICAgIHRyYW5zZm9ybSA9ICd0cmFuc2xhdGVYKDApJztcbiAgICB9IGVsc2UgaWYgKHRleHRBbGlnbiA9PT0gJ3JpZ2h0Jykge1xuICAgICAgdHJhbnNmb3JtID0gJ3RyYW5zbGF0ZVgoLTEwMCUpJztcbiAgICB9IGVsc2Uge1xuICAgICAgdHJhbnNmb3JtID0gJ3RyYW5zbGF0ZVgoLTUwJSknO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgbGVmdDogYCR7cG9zaXRpb25QZXJjZW50fSVgLFxuICAgICAgdHJhbnNmb3JtLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZEhlYWRlckNvbnRhaW5lciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICB9KVxuKTtcblxuY29uc3QgSGVhZGVyTGFiZWxBcmVhID0gc3R5bGVkKEJveCkoXG4gIGNzcyh7XG4gICAgbWluSGVpZ2h0OiAnMjRweCcsXG4gIH0pXG4pO1xuXG5leHBvcnQgY29uc3QgU2NhbGVDaGFydEhlYWRlcjogUmVhY3QuRkM8U2NhbGVDaGFydEhlYWRlclByb3BzPiA9ICh7XG4gIGxhYmVsQ291bnQsXG4gIG1pbixcbiAgbWF4LFxufSkgPT4ge1xuICBjb25zdCB7IHN0eWxlQ29uZmlnIH0gPSB1c2VCYXJDaGFydENvbnRleHQoKTtcbiAgY29uc3QgbGFiZWxQb3NpdGlvbnMgPSB1c2VMYWJlbFBvc2l0aW9ucyh7IG1pbiwgbWF4LCBjb3VudDogbGFiZWxDb3VudCB9KTtcblxuICBjb25zdCBzY2FsZUxhYmVscyA9IGxhYmVsUG9zaXRpb25zLm1hcCgoeyB2YWx1ZSwgcG9zaXRpb25QZXJjZW50IH0pID0+IChcbiAgICA8U3R5bGVkTGFiZWxUZXh0XG4gICAgICBkYXRhLXRlc3RpZD1cImNoYXJ0LWhlYWRlci1sYWJlbFwiXG4gICAgICBrZXk9e2BsYWJlbC0ke3ZhbHVlfS0ke3Bvc2l0aW9uUGVyY2VudH1gfVxuICAgICAgcG9zaXRpb25QZXJjZW50PXtwb3NpdGlvblBlcmNlbnR9XG4gICAgICB0ZXh0QWxpZ249XCJjZW50ZXJcIlxuICAgICAgdGV4dENvbG9yPXtzdHlsZUNvbmZpZy50ZXh0Q29sb3J9XG4gICAgICB2YXJpYW50PVwicC1zbWFsbFwiXG4gICAgPlxuICAgICAge2Zvcm1hdE51bWJlclVTQ29tcGFjdCh7XG4gICAgICAgIG51bTogdmFsdWUsXG4gICAgICB9KX1cbiAgICA8L1N0eWxlZExhYmVsVGV4dD5cbiAgKSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Qm94IG1iPXsxMn0gd2lkdGg9ezF9PlxuICAgICAgPFN0eWxlZEhlYWRlckNvbnRhaW5lclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICBkaXNwbGF5PXt7IF86ICdub25lJywgc206ICdibG9jaycgfX1cbiAgICAgID5cbiAgICAgICAgPFZlcnRpY2FsU3BhY2VyPlxuICAgICAgICAgIDxIZWFkZXJMYWJlbEFyZWE+e3NjYWxlTGFiZWxzfTwvSGVhZGVyTGFiZWxBcmVhPlxuICAgICAgICA8L1ZlcnRpY2FsU3BhY2VyPlxuICAgICAgPC9TdHlsZWRIZWFkZXJDb250YWluZXI+XG4gICAgPC9Cb3g+XG4gICk7XG59O1xuXG4iXX0= */");
33
+ const StyledHeaderContainer = /*#__PURE__*/_styled(Box, {
34
+ target: "e1ssd1i11",
35
+ label: "StyledHeaderContainer"
36
+ })(css({
37
+ alignItems: 'center',
38
+ position: 'relative'
39
+ }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9sYXlvdXQvU2NhbGVDaGFydEhlYWRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0M4QiIsImZpbGUiOiIuLi8uLi8uLi9zcmMvQmFyQ2hhcnQvbGF5b3V0L1NjYWxlQ2hhcnRIZWFkZXIudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgQm94IH0gZnJvbSAnLi4vLi4vQm94JztcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi9UeXBvZ3JhcGh5JztcbmltcG9ydCB7XG4gIGZvcm1hdE51bWJlclVTQ29tcGFjdCxcbiAgdXNlQmFyQ2hhcnRDb250ZXh0LFxuICB1c2VMYWJlbFBvc2l0aW9ucyxcbn0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgVmVydGljYWxTcGFjZXIgfSBmcm9tICcuL1ZlcnRpY2FsU3BhY2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBTY2FsZUNoYXJ0SGVhZGVyUHJvcHMge1xuICAvKiogTWluaW11bSB2YWx1ZSBvbiB0aGUgc2NhbGUgKi9cbiAgbWluOiBudW1iZXI7XG4gIC8qKiBNYXhpbXVtIHZhbHVlIG9uIHRoZSBzY2FsZSAqL1xuICBtYXg6IG51bWJlcjtcbiAgLyoqIE51bWJlciBvZiBsYWJlbHMgdG8gZGlzcGxheSAqL1xuICBsYWJlbENvdW50OiBudW1iZXI7XG59XG5cbmNvbnN0IFN0eWxlZExhYmVsVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIHBvc2l0aW9uUGVyY2VudDogbnVtYmVyO1xuICB0ZXh0QWxpZ246ICdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0Jztcbn0+KFxuICBjc3Moe1xuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxuICAgIG1hcmdpbjogMCxcbiAgICBwYWRkaW5nOiAwLFxuICB9KSxcbiAgKHsgcG9zaXRpb25QZXJjZW50LCB0ZXh0QWxpZ24gfSkgPT4ge1xuICAgIGxldCB0cmFuc2Zvcm0gPSAnJztcbiAgICBpZiAodGV4dEFsaWduID09PSAnbGVmdCcpIHtcbiAgICAgIHRyYW5zZm9ybSA9ICd0cmFuc2xhdGVYKDApJztcbiAgICB9IGVsc2UgaWYgKHRleHRBbGlnbiA9PT0gJ3JpZ2h0Jykge1xuICAgICAgdHJhbnNmb3JtID0gJ3RyYW5zbGF0ZVgoLTEwMCUpJztcbiAgICB9IGVsc2Uge1xuICAgICAgdHJhbnNmb3JtID0gJ3RyYW5zbGF0ZVgoLTUwJSknO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgbGVmdDogYCR7cG9zaXRpb25QZXJjZW50fSVgLFxuICAgICAgdHJhbnNmb3JtLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZEhlYWRlckNvbnRhaW5lciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICB9KVxuKTtcblxuY29uc3QgSGVhZGVyTGFiZWxBcmVhID0gc3R5bGVkKEJveCkoXG4gIGNzcyh7XG4gICAgbWluSGVpZ2h0OiAnMjRweCcsXG4gIH0pXG4pO1xuXG5leHBvcnQgY29uc3QgU2NhbGVDaGFydEhlYWRlcjogUmVhY3QuRkM8U2NhbGVDaGFydEhlYWRlclByb3BzPiA9ICh7XG4gIGxhYmVsQ291bnQsXG4gIG1pbixcbiAgbWF4LFxufSkgPT4ge1xuICBjb25zdCB7IHN0eWxlQ29uZmlnIH0gPSB1c2VCYXJDaGFydENvbnRleHQoKTtcbiAgY29uc3QgbGFiZWxQb3NpdGlvbnMgPSB1c2VMYWJlbFBvc2l0aW9ucyh7IG1pbiwgbWF4LCBjb3VudDogbGFiZWxDb3VudCB9KTtcblxuICBjb25zdCBzY2FsZUxhYmVscyA9IGxhYmVsUG9zaXRpb25zLm1hcCgoeyB2YWx1ZSwgcG9zaXRpb25QZXJjZW50IH0pID0+IChcbiAgICA8U3R5bGVkTGFiZWxUZXh0XG4gICAgICBkYXRhLXRlc3RpZD1cImNoYXJ0LWhlYWRlci1sYWJlbFwiXG4gICAgICBrZXk9e2BsYWJlbC0ke3ZhbHVlfS0ke3Bvc2l0aW9uUGVyY2VudH1gfVxuICAgICAgcG9zaXRpb25QZXJjZW50PXtwb3NpdGlvblBlcmNlbnR9XG4gICAgICB0ZXh0QWxpZ249XCJjZW50ZXJcIlxuICAgICAgdGV4dENvbG9yPXtzdHlsZUNvbmZpZy50ZXh0Q29sb3J9XG4gICAgICB2YXJpYW50PVwicC1zbWFsbFwiXG4gICAgPlxuICAgICAge2Zvcm1hdE51bWJlclVTQ29tcGFjdCh7XG4gICAgICAgIG51bTogdmFsdWUsXG4gICAgICB9KX1cbiAgICA8L1N0eWxlZExhYmVsVGV4dD5cbiAgKSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Qm94IG1iPXsxMn0gd2lkdGg9ezF9PlxuICAgICAgPFN0eWxlZEhlYWRlckNvbnRhaW5lclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICBkaXNwbGF5PXt7IF86ICdub25lJywgc206ICdibG9jaycgfX1cbiAgICAgID5cbiAgICAgICAgPFZlcnRpY2FsU3BhY2VyPlxuICAgICAgICAgIDxIZWFkZXJMYWJlbEFyZWE+e3NjYWxlTGFiZWxzfTwvSGVhZGVyTGFiZWxBcmVhPlxuICAgICAgICA8L1ZlcnRpY2FsU3BhY2VyPlxuICAgICAgPC9TdHlsZWRIZWFkZXJDb250YWluZXI+XG4gICAgPC9Cb3g+XG4gICk7XG59O1xuXG4iXX0= */");
40
+ const HeaderLabelArea = /*#__PURE__*/_styled(Box, {
41
+ target: "e1ssd1i10",
42
+ label: "HeaderLabelArea"
43
+ })(css({
44
+ minHeight: '24px'
45
+ }), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CYXJDaGFydC9sYXlvdXQvU2NhbGVDaGFydEhlYWRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0R3QiIsImZpbGUiOiIuLi8uLi8uLi9zcmMvQmFyQ2hhcnQvbGF5b3V0L1NjYWxlQ2hhcnRIZWFkZXIudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGNvZGVjYWRlbXkvZ2FtdXQtc3R5bGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHsgQm94IH0gZnJvbSAnLi4vLi4vQm94JztcbmltcG9ydCB7IFRleHQgfSBmcm9tICcuLi8uLi9UeXBvZ3JhcGh5JztcbmltcG9ydCB7XG4gIGZvcm1hdE51bWJlclVTQ29tcGFjdCxcbiAgdXNlQmFyQ2hhcnRDb250ZXh0LFxuICB1c2VMYWJlbFBvc2l0aW9ucyxcbn0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgVmVydGljYWxTcGFjZXIgfSBmcm9tICcuL1ZlcnRpY2FsU3BhY2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBTY2FsZUNoYXJ0SGVhZGVyUHJvcHMge1xuICAvKiogTWluaW11bSB2YWx1ZSBvbiB0aGUgc2NhbGUgKi9cbiAgbWluOiBudW1iZXI7XG4gIC8qKiBNYXhpbXVtIHZhbHVlIG9uIHRoZSBzY2FsZSAqL1xuICBtYXg6IG51bWJlcjtcbiAgLyoqIE51bWJlciBvZiBsYWJlbHMgdG8gZGlzcGxheSAqL1xuICBsYWJlbENvdW50OiBudW1iZXI7XG59XG5cbmNvbnN0IFN0eWxlZExhYmVsVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIHBvc2l0aW9uUGVyY2VudDogbnVtYmVyO1xuICB0ZXh0QWxpZ246ICdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0Jztcbn0+KFxuICBjc3Moe1xuICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxuICAgIG1hcmdpbjogMCxcbiAgICBwYWRkaW5nOiAwLFxuICB9KSxcbiAgKHsgcG9zaXRpb25QZXJjZW50LCB0ZXh0QWxpZ24gfSkgPT4ge1xuICAgIGxldCB0cmFuc2Zvcm0gPSAnJztcbiAgICBpZiAodGV4dEFsaWduID09PSAnbGVmdCcpIHtcbiAgICAgIHRyYW5zZm9ybSA9ICd0cmFuc2xhdGVYKDApJztcbiAgICB9IGVsc2UgaWYgKHRleHRBbGlnbiA9PT0gJ3JpZ2h0Jykge1xuICAgICAgdHJhbnNmb3JtID0gJ3RyYW5zbGF0ZVgoLTEwMCUpJztcbiAgICB9IGVsc2Uge1xuICAgICAgdHJhbnNmb3JtID0gJ3RyYW5zbGF0ZVgoLTUwJSknO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgbGVmdDogYCR7cG9zaXRpb25QZXJjZW50fSVgLFxuICAgICAgdHJhbnNmb3JtLFxuICAgIH07XG4gIH1cbik7XG5cbmNvbnN0IFN0eWxlZEhlYWRlckNvbnRhaW5lciA9IHN0eWxlZChCb3gpKFxuICBjc3Moe1xuICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICB9KVxuKTtcblxuY29uc3QgSGVhZGVyTGFiZWxBcmVhID0gc3R5bGVkKEJveCkoXG4gIGNzcyh7XG4gICAgbWluSGVpZ2h0OiAnMjRweCcsXG4gIH0pXG4pO1xuXG5leHBvcnQgY29uc3QgU2NhbGVDaGFydEhlYWRlcjogUmVhY3QuRkM8U2NhbGVDaGFydEhlYWRlclByb3BzPiA9ICh7XG4gIGxhYmVsQ291bnQsXG4gIG1pbixcbiAgbWF4LFxufSkgPT4ge1xuICBjb25zdCB7IHN0eWxlQ29uZmlnIH0gPSB1c2VCYXJDaGFydENvbnRleHQoKTtcbiAgY29uc3QgbGFiZWxQb3NpdGlvbnMgPSB1c2VMYWJlbFBvc2l0aW9ucyh7IG1pbiwgbWF4LCBjb3VudDogbGFiZWxDb3VudCB9KTtcblxuICBjb25zdCBzY2FsZUxhYmVscyA9IGxhYmVsUG9zaXRpb25zLm1hcCgoeyB2YWx1ZSwgcG9zaXRpb25QZXJjZW50IH0pID0+IChcbiAgICA8U3R5bGVkTGFiZWxUZXh0XG4gICAgICBkYXRhLXRlc3RpZD1cImNoYXJ0LWhlYWRlci1sYWJlbFwiXG4gICAgICBrZXk9e2BsYWJlbC0ke3ZhbHVlfS0ke3Bvc2l0aW9uUGVyY2VudH1gfVxuICAgICAgcG9zaXRpb25QZXJjZW50PXtwb3NpdGlvblBlcmNlbnR9XG4gICAgICB0ZXh0QWxpZ249XCJjZW50ZXJcIlxuICAgICAgdGV4dENvbG9yPXtzdHlsZUNvbmZpZy50ZXh0Q29sb3J9XG4gICAgICB2YXJpYW50PVwicC1zbWFsbFwiXG4gICAgPlxuICAgICAge2Zvcm1hdE51bWJlclVTQ29tcGFjdCh7XG4gICAgICAgIG51bTogdmFsdWUsXG4gICAgICB9KX1cbiAgICA8L1N0eWxlZExhYmVsVGV4dD5cbiAgKSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Qm94IG1iPXsxMn0gd2lkdGg9ezF9PlxuICAgICAgPFN0eWxlZEhlYWRlckNvbnRhaW5lclxuICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICBkaXNwbGF5PXt7IF86ICdub25lJywgc206ICdibG9jaycgfX1cbiAgICAgID5cbiAgICAgICAgPFZlcnRpY2FsU3BhY2VyPlxuICAgICAgICAgIDxIZWFkZXJMYWJlbEFyZWE+e3NjYWxlTGFiZWxzfTwvSGVhZGVyTGFiZWxBcmVhPlxuICAgICAgICA8L1ZlcnRpY2FsU3BhY2VyPlxuICAgICAgPC9TdHlsZWRIZWFkZXJDb250YWluZXI+XG4gICAgPC9Cb3g+XG4gICk7XG59O1xuXG4iXX0= */");
46
+ export const ScaleChartHeader = ({
47
+ labelCount,
48
+ min,
49
+ max
50
+ }) => {
51
+ const {
52
+ styleConfig
53
+ } = useBarChartContext();
54
+ const labelPositions = useLabelPositions({
55
+ min,
56
+ max,
57
+ count: labelCount
58
+ });
59
+ const scaleLabels = labelPositions.map(({
60
+ value,
61
+ positionPercent
62
+ }) => /*#__PURE__*/_jsx(StyledLabelText, {
63
+ "data-testid": "chart-header-label",
64
+ positionPercent: positionPercent,
65
+ textAlign: "center",
66
+ textColor: styleConfig.textColor,
67
+ variant: "p-small",
68
+ children: formatNumberUSCompact({
69
+ num: value
70
+ })
71
+ }, `label-${value}-${positionPercent}`));
72
+ return /*#__PURE__*/_jsx(Box, {
73
+ mb: 12,
74
+ width: 1,
75
+ children: /*#__PURE__*/_jsx(StyledHeaderContainer, {
76
+ "aria-hidden": "true",
77
+ display: {
78
+ _: 'none',
79
+ sm: 'block'
80
+ },
81
+ children: /*#__PURE__*/_jsx(VerticalSpacer, {
82
+ children: /*#__PURE__*/_jsx(HeaderLabelArea, {
83
+ children: scaleLabels
84
+ })
85
+ })
86
+ })
87
+ });
88
+ };
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from 'react';
2
+ export interface VerticalSpacerProps {
3
+ children: ReactNode;
4
+ className?: string;
5
+ }
6
+ export declare const VerticalSpacer: React.FC<VerticalSpacerProps>;