datajunction-ui
Version:
DataJunction UI
1 lines • 26.2 kB
Source Map (JSON)
{"version":3,"file":"Legend-DUEUnCaw.cjs","sources":["../node_modules/recharts/es6/component/DefaultLegendContent.js","../node_modules/recharts/es6/context/legendPayloadContext.js","../node_modules/recharts/es6/component/Legend.js"],"sourcesContent":["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); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n/**\n * @fileOverview Default Legend Content\n */\nimport * as React from 'react';\nimport { PureComponent } from 'react';\nimport { clsx } from 'clsx';\nimport { Surface } from '../container/Surface';\nimport { Symbols } from '../shape/Symbols';\nimport { adaptEventsOfChild } from '../util/types';\nvar SIZE = 32;\nexport class DefaultLegendContent extends PureComponent {\n /**\n * Render the path of icon\n * @param data Data of each legend item\n * @param iconType if defined, it will always render this icon. If undefined then it uses icon from data.type\n * @return Path element\n */\n renderIcon(data, iconType) {\n var {\n inactiveColor\n } = this.props;\n var halfSize = SIZE / 2;\n var sixthSize = SIZE / 6;\n var thirdSize = SIZE / 3;\n var color = data.inactive ? inactiveColor : data.color;\n var preferredIcon = iconType !== null && iconType !== void 0 ? iconType : data.type;\n if (preferredIcon === 'none') {\n return null;\n }\n if (preferredIcon === 'plainline') {\n return /*#__PURE__*/React.createElement(\"line\", {\n strokeWidth: 4,\n fill: \"none\",\n stroke: color,\n strokeDasharray: data.payload.strokeDasharray,\n x1: 0,\n y1: halfSize,\n x2: SIZE,\n y2: halfSize,\n className: \"recharts-legend-icon\"\n });\n }\n if (preferredIcon === 'line') {\n return /*#__PURE__*/React.createElement(\"path\", {\n strokeWidth: 4,\n fill: \"none\",\n stroke: color,\n d: \"M0,\".concat(halfSize, \"h\").concat(thirdSize, \"\\n A\").concat(sixthSize, \",\").concat(sixthSize, \",0,1,1,\").concat(2 * thirdSize, \",\").concat(halfSize, \"\\n H\").concat(SIZE, \"M\").concat(2 * thirdSize, \",\").concat(halfSize, \"\\n A\").concat(sixthSize, \",\").concat(sixthSize, \",0,1,1,\").concat(thirdSize, \",\").concat(halfSize),\n className: \"recharts-legend-icon\"\n });\n }\n if (preferredIcon === 'rect') {\n return /*#__PURE__*/React.createElement(\"path\", {\n stroke: \"none\",\n fill: color,\n d: \"M0,\".concat(SIZE / 8, \"h\").concat(SIZE, \"v\").concat(SIZE * 3 / 4, \"h\").concat(-SIZE, \"z\"),\n className: \"recharts-legend-icon\"\n });\n }\n if (/*#__PURE__*/React.isValidElement(data.legendIcon)) {\n var iconProps = _objectSpread({}, data);\n delete iconProps.legendIcon;\n return /*#__PURE__*/React.cloneElement(data.legendIcon, iconProps);\n }\n return /*#__PURE__*/React.createElement(Symbols, {\n fill: color,\n cx: halfSize,\n cy: halfSize,\n size: SIZE,\n sizeType: \"diameter\",\n type: preferredIcon\n });\n }\n\n /**\n * Draw items of legend\n * @return Items\n */\n renderItems() {\n var {\n payload,\n iconSize,\n layout,\n formatter,\n inactiveColor,\n iconType\n } = this.props;\n var viewBox = {\n x: 0,\n y: 0,\n width: SIZE,\n height: SIZE\n };\n var itemStyle = {\n display: layout === 'horizontal' ? 'inline-block' : 'block',\n marginRight: 10\n };\n var svgStyle = {\n display: 'inline-block',\n verticalAlign: 'middle',\n marginRight: 4\n };\n return payload.map((entry, i) => {\n var finalFormatter = entry.formatter || formatter;\n var className = clsx({\n 'recharts-legend-item': true,\n [\"legend-item-\".concat(i)]: true,\n inactive: entry.inactive\n });\n if (entry.type === 'none') {\n return null;\n }\n var color = entry.inactive ? inactiveColor : entry.color;\n var finalValue = finalFormatter ? finalFormatter(entry.value, entry, i) : entry.value;\n return /*#__PURE__*/React.createElement(\"li\", _extends({\n className: className,\n style: itemStyle\n // eslint-disable-next-line react/no-array-index-key\n ,\n key: \"legend-item-\".concat(i)\n }, adaptEventsOfChild(this.props, entry, i)), /*#__PURE__*/React.createElement(Surface, {\n width: iconSize,\n height: iconSize,\n viewBox: viewBox,\n style: svgStyle,\n \"aria-label\": \"\".concat(finalValue, \" legend icon\")\n }, this.renderIcon(entry, iconType)), /*#__PURE__*/React.createElement(\"span\", {\n className: \"recharts-legend-item-text\",\n style: {\n color\n }\n }, finalValue));\n });\n }\n render() {\n var {\n payload,\n layout,\n align\n } = this.props;\n if (!payload || !payload.length) {\n return null;\n }\n var finalStyle = {\n padding: 0,\n margin: 0,\n textAlign: layout === 'horizontal' ? align : 'left'\n };\n return /*#__PURE__*/React.createElement(\"ul\", {\n className: \"recharts-default-legend\",\n style: finalStyle\n }, this.renderItems());\n }\n}\n_defineProperty(DefaultLegendContent, \"displayName\", 'Legend');\n_defineProperty(DefaultLegendContent, \"defaultProps\", {\n align: 'center',\n iconSize: 14,\n inactiveColor: '#ccc',\n layout: 'horizontal',\n verticalAlign: 'middle'\n});","import { useAppSelector } from '../state/hooks';\nimport { selectLegendPayload } from '../state/selectors/legendSelectors';\n\n/**\n * Use this hook in Legend, or anywhere else where you want to read the current Legend items.\n * @return all Legend items ready to be rendered\n */\nexport function useLegendPayload() {\n return useAppSelector(selectLegendPayload);\n}","var _excluded = [\"contextPayload\"];\nfunction _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); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\nimport * as React from 'react';\nimport { PureComponent, useEffect } from 'react';\nimport { createPortal } from 'react-dom';\nimport { useLegendPortal } from '../context/legendPortalContext';\nimport { DefaultLegendContent } from './DefaultLegendContent';\nimport { isNumber } from '../util/DataUtils';\nimport { getUniqPayload } from '../util/payload/getUniqPayload';\nimport { useLegendPayload } from '../context/legendPayloadContext';\nimport { useElementOffset } from '../util/useElementOffset';\nimport { useChartHeight, useChartWidth, useMargin } from '../context/chartLayoutContext';\nimport { setLegendSettings, setLegendSize } from '../state/legendSlice';\nimport { useAppDispatch } from '../state/hooks';\nfunction defaultUniqBy(entry) {\n return entry.value;\n}\nfunction LegendContent(props) {\n var {\n contextPayload\n } = props,\n otherProps = _objectWithoutProperties(props, _excluded);\n var finalPayload = getUniqPayload(contextPayload, props.payloadUniqBy, defaultUniqBy);\n var contentProps = _objectSpread(_objectSpread({}, otherProps), {}, {\n payload: finalPayload\n });\n if (/*#__PURE__*/React.isValidElement(props.content)) {\n return /*#__PURE__*/React.cloneElement(props.content, contentProps);\n }\n if (typeof props.content === 'function') {\n return /*#__PURE__*/React.createElement(props.content, contentProps);\n }\n return /*#__PURE__*/React.createElement(DefaultLegendContent, contentProps);\n}\nfunction getDefaultPosition(style, props, margin, chartWidth, chartHeight, box) {\n var {\n layout,\n align,\n verticalAlign\n } = props;\n var hPos, vPos;\n if (!style || (style.left === undefined || style.left === null) && (style.right === undefined || style.right === null)) {\n if (align === 'center' && layout === 'vertical') {\n hPos = {\n left: ((chartWidth || 0) - box.width) / 2\n };\n } else {\n hPos = align === 'right' ? {\n right: margin && margin.right || 0\n } : {\n left: margin && margin.left || 0\n };\n }\n }\n if (!style || (style.top === undefined || style.top === null) && (style.bottom === undefined || style.bottom === null)) {\n if (verticalAlign === 'middle') {\n vPos = {\n top: ((chartHeight || 0) - box.height) / 2\n };\n } else {\n vPos = verticalAlign === 'bottom' ? {\n bottom: margin && margin.bottom || 0\n } : {\n top: margin && margin.top || 0\n };\n }\n }\n return _objectSpread(_objectSpread({}, hPos), vPos);\n}\nfunction LegendSettingsDispatcher(props) {\n var dispatch = useAppDispatch();\n useEffect(() => {\n dispatch(setLegendSettings(props));\n }, [dispatch, props]);\n return null;\n}\nfunction LegendSizeDispatcher(props) {\n var dispatch = useAppDispatch();\n useEffect(() => {\n dispatch(setLegendSize(props));\n return () => {\n dispatch(setLegendSize({\n width: 0,\n height: 0\n }));\n };\n }, [dispatch, props]);\n return null;\n}\nfunction LegendWrapper(props) {\n var contextPayload = useLegendPayload();\n var legendPortalFromContext = useLegendPortal();\n var margin = useMargin();\n var {\n width: widthFromProps,\n height: heightFromProps,\n wrapperStyle,\n portal: portalFromProps\n } = props;\n // The contextPayload is not used directly inside the hook, but we need the onBBoxUpdate call\n // when the payload changes, therefore it's here as a dependency.\n var [lastBoundingBox, updateBoundingBox] = useElementOffset([contextPayload]);\n var chartWidth = useChartWidth();\n var chartHeight = useChartHeight();\n var maxWidth = chartWidth - (margin.left || 0) - (margin.right || 0);\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n var widthOrHeight = Legend.getWidthOrHeight(props.layout, heightFromProps, widthFromProps, maxWidth);\n // if the user supplies their own portal, only use their defined wrapper styles\n var outerStyle = portalFromProps ? wrapperStyle : _objectSpread(_objectSpread({\n position: 'absolute',\n width: (widthOrHeight === null || widthOrHeight === void 0 ? void 0 : widthOrHeight.width) || widthFromProps || 'auto',\n height: (widthOrHeight === null || widthOrHeight === void 0 ? void 0 : widthOrHeight.height) || heightFromProps || 'auto'\n }, getDefaultPosition(wrapperStyle, props, margin, chartWidth, chartHeight, lastBoundingBox)), wrapperStyle);\n var legendPortal = portalFromProps !== null && portalFromProps !== void 0 ? portalFromProps : legendPortalFromContext;\n if (legendPortal == null) {\n return null;\n }\n var legendElement = /*#__PURE__*/React.createElement(\"div\", {\n className: \"recharts-legend-wrapper\",\n style: outerStyle,\n ref: updateBoundingBox\n }, /*#__PURE__*/React.createElement(LegendSettingsDispatcher, {\n layout: props.layout,\n align: props.align,\n verticalAlign: props.verticalAlign,\n itemSorter: props.itemSorter\n }), /*#__PURE__*/React.createElement(LegendSizeDispatcher, {\n width: lastBoundingBox.width,\n height: lastBoundingBox.height\n }), /*#__PURE__*/React.createElement(LegendContent, _extends({}, props, widthOrHeight, {\n margin: margin,\n chartWidth: chartWidth,\n chartHeight: chartHeight,\n contextPayload: contextPayload\n })));\n return /*#__PURE__*/createPortal(legendElement, legendPortal);\n}\nexport class Legend extends PureComponent {\n static getWidthOrHeight(layout, height, width, maxWidth) {\n if (layout === 'vertical' && isNumber(height)) {\n return {\n height\n };\n }\n if (layout === 'horizontal') {\n return {\n width: width || maxWidth\n };\n }\n return null;\n }\n render() {\n return /*#__PURE__*/React.createElement(LegendWrapper, this.props);\n }\n}\n_defineProperty(Legend, \"displayName\", 'Legend');\n_defineProperty(Legend, \"defaultProps\", {\n align: 'center',\n iconSize: 14,\n itemSorter: 'value',\n layout: 'horizontal',\n verticalAlign: 'bottom'\n});"],"names":["_extends","n","e","t","r","ownKeys","o","_objectSpread","_defineProperty","_toPropertyKey","i","_toPrimitive","SIZE","DefaultLegendContent","PureComponent","data","iconType","inactiveColor","halfSize","sixthSize","thirdSize","color","preferredIcon","React","iconProps","Symbols","payload","iconSize","layout","formatter","viewBox","itemStyle","svgStyle","entry","finalFormatter","className","clsx","finalValue","adaptEventsOfChild","Surface","align","finalStyle","useLegendPayload","useAppSelector","selectLegendPayload","_excluded","_objectWithoutProperties","_objectWithoutPropertiesLoose","defaultUniqBy","LegendContent","props","contextPayload","otherProps","finalPayload","getUniqPayload","contentProps","getDefaultPosition","style","margin","chartWidth","chartHeight","box","verticalAlign","hPos","vPos","LegendSettingsDispatcher","dispatch","useAppDispatch","useEffect","setLegendSettings","LegendSizeDispatcher","setLegendSize","LegendWrapper","legendPortalFromContext","useLegendPortal","useMargin","widthFromProps","heightFromProps","wrapperStyle","portalFromProps","lastBoundingBox","updateBoundingBox","useElementOffset","useChartWidth","useChartHeight","maxWidth","widthOrHeight","Legend","outerStyle","legendPortal","legendElement","createPortal","height","width","isNumber"],"mappings":"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","x_google_ignoreList":[0,1,2]}