@semcore/d3-chart 3.15.2 → 3.16.0-prerelease.1
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.
- package/CHANGELOG.md +12 -1
- package/lib/cjs/Area.js +26 -17
- package/lib/cjs/Area.js.map +1 -1
- package/lib/cjs/Axis.js +14 -14
- package/lib/cjs/Bar.js +10 -9
- package/lib/cjs/Bar.js.map +1 -1
- package/lib/cjs/Bubble.js +15 -14
- package/lib/cjs/Bubble.js.map +1 -1
- package/lib/cjs/Donut.js +21 -15
- package/lib/cjs/Donut.js.map +1 -1
- package/lib/cjs/Dots.js +13 -12
- package/lib/cjs/Dots.js.map +1 -1
- package/lib/cjs/GroupBar.js +4 -2
- package/lib/cjs/GroupBar.js.map +1 -1
- package/lib/cjs/HorizontalBar.js +11 -10
- package/lib/cjs/HorizontalBar.js.map +1 -1
- package/lib/cjs/Hover.js +3 -3
- package/lib/cjs/Line.js +17 -12
- package/lib/cjs/Line.js.map +1 -1
- package/lib/cjs/Plot.js +9 -6
- package/lib/cjs/Plot.js.map +1 -1
- package/lib/cjs/Radar.js +30 -22
- package/lib/cjs/Radar.js.map +1 -1
- package/lib/cjs/RadialTree.js +46 -40
- package/lib/cjs/RadialTree.js.map +1 -1
- package/lib/cjs/ReferenceLine.js +11 -10
- package/lib/cjs/ReferenceLine.js.map +1 -1
- package/lib/cjs/ScatterPlot.js +11 -10
- package/lib/cjs/ScatterPlot.js.map +1 -1
- package/lib/cjs/StackBar.js +7 -4
- package/lib/cjs/StackBar.js.map +1 -1
- package/lib/cjs/StackedArea.js +3 -1
- package/lib/cjs/StackedArea.js.map +1 -1
- package/lib/cjs/Tooltip.js +36 -12
- package/lib/cjs/Tooltip.js.map +1 -1
- package/lib/cjs/Venn.js +18 -12
- package/lib/cjs/Venn.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yModule.js +2 -2
- package/lib/cjs/a11y/PlotA11yView.js +3 -3
- package/lib/cjs/color.js +0 -14
- package/lib/cjs/color.js.map +1 -1
- package/lib/cjs/style/radial-tree.shadow.css +3 -3
- package/lib/cjs/style/venn.shadow.css +1 -1
- package/lib/cjs/types/Area.d.js.map +1 -1
- package/lib/cjs/types/Bar.d.js.map +1 -1
- package/lib/cjs/types/Donut.d.js.map +1 -1
- package/lib/cjs/types/HorizontalBar.d.js.map +1 -1
- package/lib/cjs/types/Line.d.js.map +1 -1
- package/lib/cjs/types/index.d.js.map +1 -1
- package/lib/cjs/utils.js +8 -2
- package/lib/cjs/utils.js.map +1 -1
- package/lib/es6/Area.js +26 -17
- package/lib/es6/Area.js.map +1 -1
- package/lib/es6/Axis.js +14 -14
- package/lib/es6/Bar.js +10 -9
- package/lib/es6/Bar.js.map +1 -1
- package/lib/es6/Bubble.js +15 -14
- package/lib/es6/Bubble.js.map +1 -1
- package/lib/es6/Donut.js +22 -16
- package/lib/es6/Donut.js.map +1 -1
- package/lib/es6/Dots.js +13 -12
- package/lib/es6/Dots.js.map +1 -1
- package/lib/es6/GroupBar.js +5 -3
- package/lib/es6/GroupBar.js.map +1 -1
- package/lib/es6/HorizontalBar.js +11 -10
- package/lib/es6/HorizontalBar.js.map +1 -1
- package/lib/es6/Hover.js +3 -3
- package/lib/es6/Line.js +17 -12
- package/lib/es6/Line.js.map +1 -1
- package/lib/es6/Plot.js +9 -6
- package/lib/es6/Plot.js.map +1 -1
- package/lib/es6/Radar.js +31 -23
- package/lib/es6/Radar.js.map +1 -1
- package/lib/es6/RadialTree.js +46 -40
- package/lib/es6/RadialTree.js.map +1 -1
- package/lib/es6/ReferenceLine.js +11 -10
- package/lib/es6/ReferenceLine.js.map +1 -1
- package/lib/es6/ScatterPlot.js +11 -10
- package/lib/es6/ScatterPlot.js.map +1 -1
- package/lib/es6/StackBar.js +7 -4
- package/lib/es6/StackBar.js.map +1 -1
- package/lib/es6/StackedArea.js +3 -1
- package/lib/es6/StackedArea.js.map +1 -1
- package/lib/es6/Tooltip.js +37 -13
- package/lib/es6/Tooltip.js.map +1 -1
- package/lib/es6/Venn.js +19 -13
- package/lib/es6/Venn.js.map +1 -1
- package/lib/es6/a11y/PlotA11yModule.js +2 -2
- package/lib/es6/a11y/PlotA11yView.js +3 -3
- package/lib/es6/color.js +0 -13
- package/lib/es6/color.js.map +1 -1
- package/lib/es6/style/radial-tree.shadow.css +3 -3
- package/lib/es6/style/venn.shadow.css +1 -1
- package/lib/es6/types/Area.d.js.map +1 -1
- package/lib/es6/types/Bar.d.js.map +1 -1
- package/lib/es6/types/Donut.d.js.map +1 -1
- package/lib/es6/types/HorizontalBar.d.js.map +1 -1
- package/lib/es6/types/Line.d.js.map +1 -1
- package/lib/es6/types/index.d.js +4 -0
- package/lib/es6/types/index.d.js.map +1 -1
- package/lib/es6/utils.js +6 -1
- package/lib/es6/utils.js.map +1 -1
- package/lib/types/Area.d.ts +1 -2
- package/lib/types/Bar.d.ts +1 -2
- package/lib/types/Donut.d.ts +1 -3
- package/lib/types/HorizontalBar.d.ts +1 -2
- package/lib/types/Line.d.ts +1 -2
- package/lib/types/RadialTree.d.ts +3 -0
- package/lib/types/index.d.ts +4 -0
- package/lib/types/utils.d.ts +1 -0
- package/package.json +6 -6
package/lib/es6/HorizontalBar.js
CHANGED
|
@@ -12,14 +12,14 @@ import createElement from './createElement';
|
|
|
12
12
|
import ClipPath from './ClipPath';
|
|
13
13
|
import { scaleToBand, roundedPath } from './utils';
|
|
14
14
|
/*__reshadow-styles__:"./style/bar.shadow.css"*/
|
|
15
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
16
|
-
"__SBar": "
|
|
17
|
-
"--duration": "--
|
|
18
|
-
"_color": "
|
|
19
|
-
"--color": "--
|
|
20
|
-
"_hide": "
|
|
21
|
-
"_transparent": "
|
|
22
|
-
"__SBackground": "
|
|
15
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SBar_dsdok_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:height,width,y;transition-duration:var(--duration_dsdok);transition-timing-function:ease-in-out}.___SBar_dsdok_gg_.__color_dsdok_gg_{fill:var(--color_dsdok)}.___SBar_dsdok_gg_.__hide_dsdok_gg_{display:none}.___SBar_dsdok_gg_.__transparent_dsdok_gg_{opacity:.3}.___SBackground_dsdok_gg_{fill:var(--intergalactic-chart-palette-order-other-data, #c4c7cf)}" /*__inner_css_end__*/, "dsdok_gg_") /*__reshadow_css_end__*/, {
|
|
16
|
+
"__SBar": "___SBar_dsdok_gg_",
|
|
17
|
+
"--duration": "--duration_dsdok",
|
|
18
|
+
"_color": "__color_dsdok_gg_",
|
|
19
|
+
"--color": "--color_dsdok",
|
|
20
|
+
"_hide": "__hide_dsdok_gg_",
|
|
21
|
+
"_transparent": "__transparent_dsdok_gg_",
|
|
22
|
+
"__SBackground": "___SBackground_dsdok_gg_"
|
|
23
23
|
});
|
|
24
24
|
export var MIN_WIDTH = 2;
|
|
25
25
|
var calcPartBarX = function calcPartBarX(x, minWidth, width) {
|
|
@@ -72,7 +72,8 @@ var HorizontalBarRoot = /*#__PURE__*/function (_Component) {
|
|
|
72
72
|
groupKey = _this$asProps2.groupKey,
|
|
73
73
|
transparent = _this$asProps2.transparent,
|
|
74
74
|
_this$asProps2$maxBar = _this$asProps2.maxBarSize,
|
|
75
|
-
maxBarSize = _this$asProps2$maxBar === void 0 ? Infinity : _this$asProps2$maxBar
|
|
75
|
+
maxBarSize = _this$asProps2$maxBar === void 0 ? Infinity : _this$asProps2$maxBar,
|
|
76
|
+
resolveColor = _this$asProps2.resolveColor;
|
|
76
77
|
var offset = typeof offsetProps === 'function' ? offsetProps(i) : offsetProps;
|
|
77
78
|
var _scale = _slicedToArray(scale, 2),
|
|
78
79
|
xScale = _scale[0],
|
|
@@ -106,7 +107,7 @@ var HorizontalBarRoot = /*#__PURE__*/function (_Component) {
|
|
|
106
107
|
"value": d,
|
|
107
108
|
"index": i,
|
|
108
109
|
"hide": hide,
|
|
109
|
-
"color": color,
|
|
110
|
+
"color": resolveColor(color),
|
|
110
111
|
"transparent": transparent,
|
|
111
112
|
"x": barX,
|
|
112
113
|
"y": barY,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalBar.js","names":["React","Component","sstyled","uniqueIDEnhancement","createElement","ClipPath","scaleToBand","roundedPath","style","_sstyled","insert","MIN_WIDTH","calcPartBarX","x","minWidth","width","Object","is","HorizontalBarRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getBackgroundProps","_props","index","_this$asProps","asProps","data","y","renderBar","d","i","_ref","_d$x","_d$x2","_d$x3","SBar","Element","_this$asProps2","styles","color","x0","scale","hide","offsetProps","offset","uid","duration","r","wMin","heightProps","height","onMouseMove","onMouseLeave","groupKey","transparent","_this$asProps2$maxBar","maxBarSize","Infinity","_scale","_slicedToArray","xScale","yScale","absWidth","Math","abs","max","domain","bandHeight","bandwidth","min","Number","barY","barX","dSvg","getHorizontalRect","radius","Array","isArray","position","dataHintsHandler","describeGroupedValues","describeValueEntity","concat","cn","render","_this$asProps3","size","Fragment","map","bind","setAttributeTag","rect","setAttribute","id","transition","_defineProperty","Background","props","_ref2","SBackground","_scale2","xRange","range","_ref3"],"sources":["../../src/HorizontalBar.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { scaleToBand, roundedPath } from './utils';\n\nimport style from './style/bar.shadow.css';\n\nexport const MIN_WIDTH = 2;\n\nconst calcPartBarX = (x, minWidth, width) => {\n // need for the correct rendering of negative values\n if (x <= 0) {\n return width <= minWidth ? minWidth : 0;\n }\n // need for the correct rendering of the minimum positive values\n return Object.is(x, 0) ? minWidth : 0;\n};\n\nclass HorizontalBarRoot extends Component {\n static displayName = 'HorizontalBar';\n static enhance = [uniqueIDEnhancement()];\n static style = style;\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n r: 2,\n wMin: MIN_WIDTH,\n };\n\n getBackgroundProps(_props, index) {\n const { data, y } = this.asProps;\n return {\n value: data[index][y],\n index,\n };\n }\n\n renderBar(d, i) {\n const SBar = this.Element;\n const {\n styles,\n color,\n x,\n x0,\n y,\n scale,\n hide,\n offset: offsetProps,\n uid,\n duration,\n r,\n wMin,\n height: heightProps,\n onMouseMove,\n onMouseLeave,\n groupKey,\n transparent,\n maxBarSize = Infinity,\n } = this.asProps;\n\n const offset = typeof offsetProps === 'function' ? offsetProps(i) : offsetProps;\n const [xScale, yScale] = scale;\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[x0] ?? 0)),\n );\n const bandHeight = heightProps || scaleToBand(yScale).bandwidth();\n const height = Math.min(bandHeight, maxBarSize);\n const width = Number(d[x] - (d[x0] ?? 0)) === 0 ? 0 : Math.max(absWidth, wMin);\n const barY = yScale(d[y]) + bandHeight / 2 - height / 2 + offset[1];\n const barX =\n xScale(Math.min(d[x0] ?? 0, width <= wMin && d[x] < 0 ? 0 : d[x])) +\n offset[0] -\n calcPartBarX(d[x], wMin, width);\n const dSvg = getHorizontalRect({\n x: barX,\n y: barY,\n width,\n height,\n radius: Array.isArray(r) ? r[i] : r,\n position: d[x] > 0 || Object.is(d[x], 0) ? 'right' : 'left',\n });\n\n if (groupKey) {\n this.asProps.dataHintsHandler.describeGroupedValues(groupKey, x);\n } else {\n this.asProps.dataHintsHandler.describeValueEntity(`${i}.${x}`, groupKey ?? d[y]);\n }\n\n return sstyled(styles)(\n <SBar\n aria-hidden\n key={`horizontal-bar-${i}`}\n render='path'\n clipPath={`url(#${uid})`}\n __excludeProps={['data', 'scale', 'value', 'offset']}\n childrenPosition='above'\n value={d}\n index={i}\n hide={hide}\n color={color}\n transparent={transparent}\n x={barX}\n y={barY}\n width={width}\n height={height}\n d={dSvg}\n use:duration={`${duration}ms`}\n onMouseMove={onMouseMove}\n onMouseLeave={onMouseLeave}\n />,\n );\n }\n\n render() {\n const { data, uid, size, duration } = this.asProps;\n\n return (\n <>\n {data.map(this.renderBar.bind(this))}\n {duration && (\n <ClipPath\n aria-hidden\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x='0'\n y='0'\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>\n );\n }\n}\n\nfunction Background(props) {\n const { Element: SBackground, styles, scale, value } = props;\n const [xScale, yScale] = scale;\n const xRange = xScale.range();\n\n return sstyled(styles)(\n <SBackground\n aria-hidden\n render='rect'\n childrenPosition='above'\n width={xRange[1] - xRange[0]}\n height={scaleToBand(yScale).bandwidth()}\n x={xRange[0]}\n y={yScale(value)}\n />,\n );\n}\n\nfunction getHorizontalRect({ x, y, width, height, radius, position }) {\n if (width < radius) radius = width;\n if (radius) {\n if (position === 'right')\n return roundedPath(x, y, width, height, radius, false, true, false, true);\n return roundedPath(x, y, width, height, radius, true, false, true, false);\n }\n return roundedPath(x, y, width, height, radius);\n}\n\nexport default createElement(HorizontalBarRoot, { Background });\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HorizontalBar.js","names":["React","Component","sstyled","uniqueIDEnhancement","createElement","ClipPath","scaleToBand","roundedPath","style","_sstyled","insert","MIN_WIDTH","calcPartBarX","x","minWidth","width","Object","is","HorizontalBarRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getBackgroundProps","_props","index","_this$asProps","asProps","data","y","renderBar","d","i","_ref","_d$x","_d$x2","_d$x3","SBar","Element","_this$asProps2","styles","color","x0","scale","hide","offsetProps","offset","uid","duration","r","wMin","heightProps","height","onMouseMove","onMouseLeave","groupKey","transparent","_this$asProps2$maxBar","maxBarSize","Infinity","resolveColor","_scale","_slicedToArray","xScale","yScale","absWidth","Math","abs","max","domain","bandHeight","bandwidth","min","Number","barY","barX","dSvg","getHorizontalRect","radius","Array","isArray","position","dataHintsHandler","describeGroupedValues","describeValueEntity","concat","cn","render","_this$asProps3","size","Fragment","map","bind","setAttributeTag","rect","setAttribute","id","transition","_defineProperty","Background","props","_ref2","SBackground","_scale2","xRange","range","_ref3"],"sources":["../../src/HorizontalBar.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport ClipPath from './ClipPath';\nimport { scaleToBand, roundedPath } from './utils';\n\nimport style from './style/bar.shadow.css';\n\nexport const MIN_WIDTH = 2;\n\nconst calcPartBarX = (x, minWidth, width) => {\n // need for the correct rendering of negative values\n if (x <= 0) {\n return width <= minWidth ? minWidth : 0;\n }\n // need for the correct rendering of the minimum positive values\n return Object.is(x, 0) ? minWidth : 0;\n};\n\nclass HorizontalBarRoot extends Component {\n static displayName = 'HorizontalBar';\n static enhance = [uniqueIDEnhancement()];\n static style = style;\n\n static defaultProps = {\n offset: [0, 0],\n duration: 500,\n r: 2,\n wMin: MIN_WIDTH,\n };\n\n getBackgroundProps(_props, index) {\n const { data, y } = this.asProps;\n return {\n value: data[index][y],\n index,\n };\n }\n\n renderBar(d, i) {\n const SBar = this.Element;\n const {\n styles,\n color,\n x,\n x0,\n y,\n scale,\n hide,\n offset: offsetProps,\n uid,\n duration,\n r,\n wMin,\n height: heightProps,\n onMouseMove,\n onMouseLeave,\n groupKey,\n transparent,\n maxBarSize = Infinity,\n resolveColor,\n } = this.asProps;\n\n const offset = typeof offsetProps === 'function' ? offsetProps(i) : offsetProps;\n const [xScale, yScale] = scale;\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[x0] ?? 0)),\n );\n const bandHeight = heightProps || scaleToBand(yScale).bandwidth();\n const height = Math.min(bandHeight, maxBarSize);\n const width = Number(d[x] - (d[x0] ?? 0)) === 0 ? 0 : Math.max(absWidth, wMin);\n const barY = yScale(d[y]) + bandHeight / 2 - height / 2 + offset[1];\n const barX =\n xScale(Math.min(d[x0] ?? 0, width <= wMin && d[x] < 0 ? 0 : d[x])) +\n offset[0] -\n calcPartBarX(d[x], wMin, width);\n const dSvg = getHorizontalRect({\n x: barX,\n y: barY,\n width,\n height,\n radius: Array.isArray(r) ? r[i] : r,\n position: d[x] > 0 || Object.is(d[x], 0) ? 'right' : 'left',\n });\n\n if (groupKey) {\n this.asProps.dataHintsHandler.describeGroupedValues(groupKey, x);\n } else {\n this.asProps.dataHintsHandler.describeValueEntity(`${i}.${x}`, groupKey ?? d[y]);\n }\n\n return sstyled(styles)(\n <SBar\n aria-hidden\n key={`horizontal-bar-${i}`}\n render='path'\n clipPath={`url(#${uid})`}\n __excludeProps={['data', 'scale', 'value', 'offset']}\n childrenPosition='above'\n value={d}\n index={i}\n hide={hide}\n color={resolveColor(color)}\n transparent={transparent}\n x={barX}\n y={barY}\n width={width}\n height={height}\n d={dSvg}\n use:duration={`${duration}ms`}\n onMouseMove={onMouseMove}\n onMouseLeave={onMouseLeave}\n />,\n );\n }\n\n render() {\n const { data, uid, size, duration } = this.asProps;\n\n return (\n <>\n {data.map(this.renderBar.bind(this))}\n {duration && (\n <ClipPath\n aria-hidden\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x='0'\n y='0'\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>\n );\n }\n}\n\nfunction Background(props) {\n const { Element: SBackground, styles, scale, value } = props;\n const [xScale, yScale] = scale;\n const xRange = xScale.range();\n\n return sstyled(styles)(\n <SBackground\n aria-hidden\n render='rect'\n childrenPosition='above'\n width={xRange[1] - xRange[0]}\n height={scaleToBand(yScale).bandwidth()}\n x={xRange[0]}\n y={yScale(value)}\n />,\n );\n}\n\nfunction getHorizontalRect({ x, y, width, height, radius, position }) {\n if (width < radius) radius = width;\n if (radius) {\n if (position === 'right')\n return roundedPath(x, y, width, height, radius, false, true, false, true);\n return roundedPath(x, y, width, height, radius, true, false, true, false);\n }\n return roundedPath(x, y, width, height, radius);\n}\n\nexport default createElement(HorizontalBarRoot, { Background });\n"],"mappings":"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"}
|
package/lib/es6/Hover.js
CHANGED
|
@@ -16,9 +16,9 @@ import trottle from '@semcore/utils/lib/rafTrottle';
|
|
|
16
16
|
import createElement from './createElement';
|
|
17
17
|
import { scaleOfBandwidth, getIndexFromData, eventToPoint, invert, CONSTANT, scaleToBand } from './utils';
|
|
18
18
|
/*__reshadow-styles__:"./style/hover.shadow.css"*/
|
|
19
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
20
|
-
"__SHoverLine": "
|
|
21
|
-
"__SHoverRect": "
|
|
19
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SHoverLine_1ieto_gg_{stroke:var(--intergalactic-chart-grid-x-axis, #c4c7cf)}.___SHoverRect_1ieto_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}" /*__inner_css_end__*/, "1ieto_gg_") /*__reshadow_css_end__*/, {
|
|
20
|
+
"__SHoverLine": "___SHoverLine_1ieto_gg_",
|
|
21
|
+
"__SHoverRect": "___SHoverRect_1ieto_gg_"
|
|
22
22
|
});
|
|
23
23
|
import Tooltip from './Tooltip';
|
|
24
24
|
var Hover = /*#__PURE__*/function (_Component) {
|
package/lib/es6/Line.js
CHANGED
|
@@ -14,15 +14,15 @@ import { definedData, definedNullData, scaleOfBandwidth, getNullData, interpolat
|
|
|
14
14
|
import Dots from './Dots';
|
|
15
15
|
import ClipPath from './ClipPath';
|
|
16
16
|
/*__reshadow-styles__:"./style/line.shadow.css"*/
|
|
17
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
18
|
-
"__SLine": "
|
|
19
|
-
"--duration": "--
|
|
20
|
-
"_color": "
|
|
21
|
-
"--color": "--
|
|
22
|
-
"_hide": "
|
|
23
|
-
"_transparent": "
|
|
24
|
-
"__SNull": "
|
|
25
|
-
"__SAria": "
|
|
17
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SLine_cgce4_gg_{fill:transparent;stroke-width:3;stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);transition-property:d;transition-duration:var(--duration_cgce4);transition-timing-function:ease-in-out}.___SLine_cgce4_gg_.__color_cgce4_gg_{stroke:var(--color_cgce4)}.___SLine_cgce4_gg_.__hide_cgce4_gg_{display:none}.___SLine_cgce4_gg_.__transparent_cgce4_gg_{opacity:.3}.___SNull_cgce4_gg_{fill:transparent;stroke:var(--intergalactic-border-primary, #c4c7cf);stroke-dasharray:4}.___SNull_cgce4_gg_.__hide_cgce4_gg_{display:none}.___SAria_cgce4_gg_{transition-property:d;transition-duration:var(--duration_cgce4);transition-timing-function:ease-in-out;opacity:.3;fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SAria_cgce4_gg_.__color_cgce4_gg_{fill:var(--color_cgce4)}" /*__inner_css_end__*/, "cgce4_gg_") /*__reshadow_css_end__*/, {
|
|
18
|
+
"__SLine": "___SLine_cgce4_gg_",
|
|
19
|
+
"--duration": "--duration_cgce4",
|
|
20
|
+
"_color": "__color_cgce4_gg_",
|
|
21
|
+
"--color": "--color_cgce4",
|
|
22
|
+
"_hide": "__hide_cgce4_gg_",
|
|
23
|
+
"_transparent": "__transparent_cgce4_gg_",
|
|
24
|
+
"__SNull": "___SNull_cgce4_gg_",
|
|
25
|
+
"__SAria": "___SAria_cgce4_gg_"
|
|
26
26
|
});
|
|
27
27
|
var LineRoot = /*#__PURE__*/function (_Component) {
|
|
28
28
|
_inherits(LineRoot, _Component);
|
|
@@ -39,6 +39,7 @@ var LineRoot = /*#__PURE__*/function (_Component) {
|
|
|
39
39
|
y = _this$asProps.y,
|
|
40
40
|
d3 = _this$asProps.d3,
|
|
41
41
|
color = _this$asProps.color,
|
|
42
|
+
resolveColor = _this$asProps.resolveColor,
|
|
42
43
|
duration = _this$asProps.duration,
|
|
43
44
|
transparent = _this$asProps.transparent;
|
|
44
45
|
return {
|
|
@@ -46,6 +47,7 @@ var LineRoot = /*#__PURE__*/function (_Component) {
|
|
|
46
47
|
y: y,
|
|
47
48
|
d3: d3,
|
|
48
49
|
color: color,
|
|
50
|
+
resolveColor: resolveColor,
|
|
49
51
|
duration: duration,
|
|
50
52
|
transparent: transparent
|
|
51
53
|
};
|
|
@@ -57,7 +59,8 @@ var LineRoot = /*#__PURE__*/function (_Component) {
|
|
|
57
59
|
x = _this$asProps2.x,
|
|
58
60
|
y = _this$asProps2.y,
|
|
59
61
|
d3 = _this$asProps2.d3,
|
|
60
|
-
color = _this$asProps2.color
|
|
62
|
+
color = _this$asProps2.color,
|
|
63
|
+
resolveColor = _this$asProps2.resolveColor;
|
|
61
64
|
var data = this.asProps.data.filter(function (item) {
|
|
62
65
|
return item[y] !== interpolateValue;
|
|
63
66
|
});
|
|
@@ -65,7 +68,8 @@ var LineRoot = /*#__PURE__*/function (_Component) {
|
|
|
65
68
|
d3: d3,
|
|
66
69
|
// TODO: vertical
|
|
67
70
|
data: getNullData(data, definedNullData(x, y), y),
|
|
68
|
-
color: color
|
|
71
|
+
color: color,
|
|
72
|
+
resolveColor: resolveColor
|
|
69
73
|
};
|
|
70
74
|
}
|
|
71
75
|
}, {
|
|
@@ -100,6 +104,7 @@ var LineRoot = /*#__PURE__*/function (_Component) {
|
|
|
100
104
|
styles = _this$asProps4.styles,
|
|
101
105
|
hide = _this$asProps4.hide,
|
|
102
106
|
color = _this$asProps4.color,
|
|
107
|
+
resolveColor = _this$asProps4.resolveColor,
|
|
103
108
|
uid = _this$asProps4.uid,
|
|
104
109
|
size = _this$asProps4.size,
|
|
105
110
|
d3 = _this$asProps4.d3,
|
|
@@ -117,7 +122,7 @@ var LineRoot = /*#__PURE__*/function (_Component) {
|
|
|
117
122
|
"clipPath": "url(#".concat(uid, ")"),
|
|
118
123
|
"render": 'path',
|
|
119
124
|
"hide": hide,
|
|
120
|
-
"color": color,
|
|
125
|
+
"color": resolveColor(color),
|
|
121
126
|
"transparent": transparent,
|
|
122
127
|
"d": d3(data),
|
|
123
128
|
"use:duration": "".concat(duration, "ms")
|
package/lib/es6/Line.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Line.js","names":["React","curveLinear","line","d3Line","area","d3Area","curveCardinal","Component","sstyled","uniqueIDEnhancement","useUID","createElement","definedData","definedNullData","scaleOfBandwidth","getNullData","interpolateValue","Dots","ClipPath","style","_sstyled","insert","LineRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getDotsProps","_this$asProps","asProps","x","y","d3","color","duration","transparent","getNullProps","_this$asProps2","data","filter","item","getAreaProps","_this$asProps3","hide","scale","render","_ref","SLine","Element","_this$asProps4","styles","uid","size","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","cn","concat","setAttributeTag","rect","setAttribute","_defineProperty","_ref4","$rootProps","_ref4$curve","curve","_ref5","_ref6","_slicedToArray","xScale","yScale","defined","p","Null","props","_ref2","SNull","Area","_ref3","SAria","y0","y1","_props$curve","_scale"],"sources":["../../src/Line.jsx"],"sourcesContent":["import React from 'react';\nimport { curveLinear, line as d3Line, area as d3Area, curveCardinal } from 'd3-shape';\nimport { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement, { useUID } from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport {\n definedData,\n definedNullData,\n scaleOfBandwidth,\n getNullData,\n interpolateValue,\n} from './utils';\nimport Dots from './Dots';\nimport ClipPath from './ClipPath';\n\nimport style from './style/line.shadow.css';\n\nclass LineRoot extends Component {\n static displayName = 'Line';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({ x, y, $rootProps, curve = curveLinear, scale }) => {\n const [xScale, yScale] = scale || $rootProps.scale;\n return {\n d3: d3Line()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y((p) => scaleOfBandwidth(yScale, p[y])),\n duration: 500,\n };\n };\n\n getDotsProps() {\n const { x, y, d3, color, duration, transparent } = this.asProps;\n return {\n x,\n y,\n d3,\n color,\n duration,\n transparent,\n };\n }\n\n getNullProps() {\n const { x, y, d3, color } = this.asProps;\n const data = this.asProps.data.filter((item) => item[y] !== interpolateValue);\n\n return {\n d3,\n // TODO: vertical\n data: getNullData(data, definedNullData(x, y), y),\n color,\n };\n }\n\n getAreaProps() {\n const { x, y, color, hide, duration, scale } = this.asProps;\n const data = this.asProps.data.filter((item) => item[y] !== interpolateValue);\n\n return {\n x,\n y,\n data,\n color,\n hide,\n duration,\n scale,\n };\n }\n\n render() {\n const SLine = this.Element;\n const { styles, hide, color, uid, size, d3, duration, x, y, transparent } = this.asProps;\n const data = this.asProps.data.filter((item) => item[y] !== interpolateValue);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y);\n this.asProps.dataHintsHandler.establishDataType('time-series');\n\n return sstyled(styles)(\n <>\n <SLine\n aria-hidden\n clipPath={`url(#${uid})`}\n render='path'\n hide={hide}\n color={color}\n transparent={transparent}\n d={d3(data)}\n use:duration={`${duration}ms`}\n />\n {duration && (\n <ClipPath\n aria-hidden\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x='0'\n y='0'\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>,\n );\n }\n}\n\nfunction Null(props) {\n const { Element: SNull, styles, d3, data, hide } = props;\n return sstyled(styles)(<SNull render='path' d={d3(data)} hide={hide} />);\n}\n\nfunction Area(props) {\n const uid = useUID();\n const {\n Element: SAria,\n styles,\n data,\n hide,\n duration,\n color,\n scale,\n x,\n y0,\n y1,\n curve = curveCardinal,\n } = props;\n const [xScale, yScale] = scale;\n\n const d3 = d3Area()\n .curve(curve)\n .x((data) => xScale(data[x]))\n .y0((data) => yScale(data[y0]))\n .y1((data) => yScale(data[y1]));\n\n return sstyled(styles)(\n <SAria\n aria-hidden\n clipPath={`url(#${uid})`}\n render='path'\n hide={hide}\n color={color}\n d={d3(data)}\n use:duration={`${duration}ms`}\n />,\n );\n}\n\nexport default createElement(LineRoot, {\n Dots,\n Null,\n Area,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Line.js","names":["React","curveLinear","line","d3Line","area","d3Area","curveCardinal","Component","sstyled","uniqueIDEnhancement","useUID","createElement","definedData","definedNullData","scaleOfBandwidth","getNullData","interpolateValue","Dots","ClipPath","style","_sstyled","insert","LineRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getDotsProps","_this$asProps","asProps","x","y","d3","color","resolveColor","duration","transparent","getNullProps","_this$asProps2","data","filter","item","getAreaProps","_this$asProps3","hide","scale","render","_ref","SLine","Element","_this$asProps4","styles","uid","size","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","cn","concat","setAttributeTag","rect","setAttribute","_defineProperty","_ref4","$rootProps","_ref4$curve","curve","_ref5","_ref6","_slicedToArray","xScale","yScale","defined","p","Null","props","_ref2","SNull","Area","_ref3","SAria","y0","y1","_props$curve","_scale"],"sources":["../../src/Line.jsx"],"sourcesContent":["import React from 'react';\nimport { curveLinear, line as d3Line, area as d3Area, curveCardinal } from 'd3-shape';\nimport { Component, sstyled } from '@semcore/core';\nimport uniqueIDEnhancement, { useUID } from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport {\n definedData,\n definedNullData,\n scaleOfBandwidth,\n getNullData,\n interpolateValue,\n} from './utils';\nimport Dots from './Dots';\nimport ClipPath from './ClipPath';\n\nimport style from './style/line.shadow.css';\n\nclass LineRoot extends Component {\n static displayName = 'Line';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = ({ x, y, $rootProps, curve = curveLinear, scale }) => {\n const [xScale, yScale] = scale || $rootProps.scale;\n return {\n d3: d3Line()\n .defined(definedData(x, y))\n .curve(curve)\n .x((p) => scaleOfBandwidth(xScale, p[x]))\n .y((p) => scaleOfBandwidth(yScale, p[y])),\n duration: 500,\n };\n };\n\n getDotsProps() {\n const { x, y, d3, color, resolveColor, duration, transparent } = this.asProps;\n return {\n x,\n y,\n d3,\n color,\n resolveColor,\n duration,\n transparent,\n };\n }\n\n getNullProps() {\n const { x, y, d3, color, resolveColor } = this.asProps;\n const data = this.asProps.data.filter((item) => item[y] !== interpolateValue);\n\n return {\n d3,\n // TODO: vertical\n data: getNullData(data, definedNullData(x, y), y),\n color,\n resolveColor,\n };\n }\n\n getAreaProps() {\n const { x, y, color, hide, duration, scale } = this.asProps;\n const data = this.asProps.data.filter((item) => item[y] !== interpolateValue);\n\n return {\n x,\n y,\n data,\n color,\n hide,\n duration,\n scale,\n };\n }\n\n render() {\n const SLine = this.Element;\n const { styles, hide, color, resolveColor, uid, size, d3, duration, x, y, transparent } =\n this.asProps;\n const data = this.asProps.data.filter((item) => item[y] !== interpolateValue);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y);\n this.asProps.dataHintsHandler.establishDataType('time-series');\n\n return sstyled(styles)(\n <>\n <SLine\n aria-hidden\n clipPath={`url(#${uid})`}\n render='path'\n hide={hide}\n color={resolveColor(color)}\n transparent={transparent}\n d={d3(data)}\n use:duration={`${duration}ms`}\n />\n {duration && (\n <ClipPath\n aria-hidden\n setAttributeTag={(rect) => {\n rect.setAttribute('width', size[0]);\n }}\n id={uid}\n x='0'\n y='0'\n width={0}\n height={size[1]}\n transition={`width ${duration}ms ease-in-out`}\n />\n )}\n </>,\n );\n }\n}\n\nfunction Null(props) {\n const { Element: SNull, styles, d3, data, hide } = props;\n return sstyled(styles)(<SNull render='path' d={d3(data)} hide={hide} />);\n}\n\nfunction Area(props) {\n const uid = useUID();\n const {\n Element: SAria,\n styles,\n data,\n hide,\n duration,\n color,\n scale,\n x,\n y0,\n y1,\n curve = curveCardinal,\n } = props;\n const [xScale, yScale] = scale;\n\n const d3 = d3Area()\n .curve(curve)\n .x((data) => xScale(data[x]))\n .y0((data) => yScale(data[y0]))\n .y1((data) => yScale(data[y1]));\n\n return sstyled(styles)(\n <SAria\n aria-hidden\n clipPath={`url(#${uid})`}\n render='path'\n hide={hide}\n color={color}\n d={d3(data)}\n use:duration={`${duration}ms`}\n />,\n );\n}\n\nexport default createElement(LineRoot, {\n Dots,\n Null,\n Area,\n});\n"],"mappings":"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"}
|
package/lib/es6/Plot.js
CHANGED
|
@@ -16,10 +16,11 @@ import keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhan
|
|
|
16
16
|
import { eventToPoint, uniqueId } from './utils';
|
|
17
17
|
import { PlotA11yModule } from './a11y/PlotA11yModule';
|
|
18
18
|
import { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';
|
|
19
|
+
import colorResolverEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';
|
|
19
20
|
/*__reshadow-styles__:"./style/plot.shadow.css"*/
|
|
20
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
21
|
-
"__SPlot": "
|
|
22
|
-
"_keyboardFocused": "
|
|
21
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlot_6ph44_gg_{overflow:hidden}.___SPlot_6ph44_gg_:active,.___SPlot_6ph44_gg_:focus{outline:0;text-decoration:none}foreignObject[data-aria-only]{pointer-events:none}.___SPlot_6ph44_gg_.__keyboardFocused_6ph44_gg_{border:1px solid var(--intergalactic-chart-palette-order-9, #008ff8);box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}" /*__inner_css_end__*/, "6ph44_gg_") /*__reshadow_css_end__*/, {
|
|
22
|
+
"__SPlot": "___SPlot_6ph44_gg_",
|
|
23
|
+
"_keyboardFocused": "__keyboardFocused_6ph44_gg_"
|
|
23
24
|
});
|
|
24
25
|
var PlotRoot = /*#__PURE__*/function (_Component) {
|
|
25
26
|
_inherits(PlotRoot, _Component);
|
|
@@ -74,7 +75,8 @@ var PlotRoot = /*#__PURE__*/function (_Component) {
|
|
|
74
75
|
data = _this$asProps.data,
|
|
75
76
|
width = _this$asProps.width,
|
|
76
77
|
height = _this$asProps.height,
|
|
77
|
-
locale = _this$asProps.locale
|
|
78
|
+
locale = _this$asProps.locale,
|
|
79
|
+
resolveColor = _this$asProps.resolveColor;
|
|
78
80
|
var yScaleDomain = scale === null || scale === void 0 ? void 0 : (_scale$ = scale[1]) === null || _scale$ === void 0 ? void 0 : (_scale$$domain = _scale$.domain) === null || _scale$$domain === void 0 ? void 0 : _scale$$domain.call(_scale$);
|
|
79
81
|
if (yScaleDomain !== null && yScaleDomain !== void 0 && yScaleDomain.length && data !== null && data !== void 0 && data.length) {
|
|
80
82
|
this.dataHintsHandler.setPointsDensity(data.length / width, Math.abs(yScaleDomain[1] - yScaleDomain[0]) / height);
|
|
@@ -87,7 +89,8 @@ var PlotRoot = /*#__PURE__*/function (_Component) {
|
|
|
87
89
|
scale: scale,
|
|
88
90
|
eventEmitter: this.eventEmitter,
|
|
89
91
|
rootRef: this.rootRef,
|
|
90
|
-
dataHintsHandler: this.dataHintsHandler
|
|
92
|
+
dataHintsHandler: this.dataHintsHandler,
|
|
93
|
+
resolveColor: resolveColor
|
|
91
94
|
}
|
|
92
95
|
};
|
|
93
96
|
}
|
|
@@ -140,6 +143,6 @@ _defineProperty(PlotRoot, "defaultProps", function () {
|
|
|
140
143
|
height: 0
|
|
141
144
|
};
|
|
142
145
|
});
|
|
143
|
-
_defineProperty(PlotRoot, "enhance", [keyboardFocusEnhance()]);
|
|
146
|
+
_defineProperty(PlotRoot, "enhance", [keyboardFocusEnhance(), colorResolverEnhance()]);
|
|
144
147
|
export default createComponent(PlotRoot);
|
|
145
148
|
//# sourceMappingURL=Plot.js.map
|
package/lib/es6/Plot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Plot.js","names":["React","createComponent","Component","Root","sstyled","Box","EventEmitter","keyboardFocusEnhance","eventToPoint","uniqueId","PlotA11yModule","makeDataHintsHandlers","makeDataHintsContainer","style","_sstyled","insert","PlotRoot","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","dataStructureHints","e","scale","asProps","eventEmitter","emit","length","_scale","_slicedToArray","xScale","yScale","_eventToPoint","rootRef","current","_eventToPoint2","pX","pY","_xScale$range","range","_xScale$range2","minX","maxX","_yScale$range","_yScale$range2","maxY","minY","_createClass","key","value","setContext","_scale$","_scale$$domain","_this$asProps","data","width","height","locale","yScaleDomain","domain","dataHintsHandler","setPointsDensity","Math","abs","$rootProps","size","render","_ref","_ref2","SPlot","_this$asProps2","styles","Children","a11yAltTextConfig","label","createElement","cn","_objectSpread","_assignProps","handlerMouseMove","handlerMouseLeave","plotId"],"sources":["../../src/Plot.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport EventEmitter from '@semcore/utils/lib/eventEmitter';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { eventToPoint, uniqueId } from './utils';\nimport { PlotA11yModule } from './a11y/PlotA11yModule';\nimport { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';\n\nimport style from './style/plot.shadow.css';\n\nclass PlotRoot extends Component {\n static displayName = 'Plot';\n static style = style;\n\n constructor(props) {\n super(props);\n this.eventEmitter = props.eventEmitter || new EventEmitter();\n }\n\n static defaultProps = () => ({\n width: 0,\n height: 0,\n });\n\n static enhance = [keyboardFocusEnhance()];\n\n plotId = uniqueId();\n\n rootRef = React.createRef();\n\n dataStructureHints = makeDataHintsContainer();\n dataHintsHandler = makeDataHintsHandlers(this.dataStructureHints);\n\n handlerMouseMove = (e) => {\n const { scale } = this.asProps;\n this.eventEmitter.emit('onMouseMoveRoot', e);\n\n if (scale && scale.length >= 2) {\n const [xScale, yScale] = scale;\n const [pX, pY] = eventToPoint(e, this.rootRef.current);\n const [minX, maxX] = xScale.range();\n const [maxY, minY] = yScale.range();\n\n if (pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) {\n this.eventEmitter.emit('onMouseMoveChart', e);\n } else {\n this.eventEmitter.emit('onMouseLeaveChart', e);\n }\n }\n };\n\n handlerMouseLeave = (e) => {\n this.eventEmitter.emit('onMouseLeaveRoot', e);\n this.eventEmitter.emit('onMouseLeaveChart', e);\n };\n\n setContext() {\n const { scale, data, width, height, locale } = this.asProps;\n\n const yScaleDomain = scale?.[1]?.domain?.();\n if (yScaleDomain?.length && data?.length) {\n this.dataHintsHandler.setPointsDensity(\n data.length / width,\n Math.abs(yScaleDomain[1] - yScaleDomain[0]) / height,\n );\n }\n\n return {\n $rootProps: {\n size: [width, height],\n data: data,\n locale,\n scale: scale,\n eventEmitter: this.eventEmitter,\n rootRef: this.rootRef,\n dataHintsHandler: this.dataHintsHandler,\n },\n };\n }\n\n render() {\n const SPlot = Root;\n const { styles, width, height, Children, data, a11yAltTextConfig, label, locale } =\n this.asProps;\n\n if (!width || !height) return null;\n\n return sstyled(styles)(\n <SPlot\n render={Box}\n tag='svg'\n __excludeProps={['data', 'scale']}\n ref={this.rootRef}\n onMouseMove={this.handlerMouseMove}\n onMouseLeave={this.handlerMouseLeave}\n aria-label={label}\n tabIndex={0}\n >\n <Children />\n <foreignObject width='100%' height='100%' data-aria-only>\n <PlotA11yModule\n id={this.plotId}\n data={data}\n plotLabel={label}\n locale={locale}\n plotRef={this.rootRef}\n hints={this.dataStructureHints}\n config={a11yAltTextConfig}\n />\n </foreignObject>\n </SPlot>,\n );\n }\n}\n\nexport default createComponent(PlotRoot);\n"],"mappings":";;;;;;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,eAAe,IAAIC,SAAS,EAAEC,IAAI,EAAEC,OAAO,QAAQ,eAAe;AACzE,SAASC,GAAG,QAAQ,mBAAmB;AACvC,OAAOC,YAAY,MAAM,iCAAiC;AAC1D,OAAOC,oBAAoB,MAAM,kDAAkD;AACnF,SAASC,YAAY,EAAEC,QAAQ,QAAQ,SAAS;AAChD,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,qBAAqB,EAAEC,sBAAsB,QAAQ,cAAc;AAAC;AAAA,IAAAC,KAAA,+BAAAC,QAAA,CAAAC,MAAA;EAAA;EAAA;AAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"Plot.js","names":["React","createComponent","Component","Root","sstyled","Box","EventEmitter","keyboardFocusEnhance","eventToPoint","uniqueId","PlotA11yModule","makeDataHintsHandlers","makeDataHintsContainer","colorResolverEnhance","style","_sstyled","insert","PlotRoot","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","dataStructureHints","e","scale","asProps","eventEmitter","emit","length","_scale","_slicedToArray","xScale","yScale","_eventToPoint","rootRef","current","_eventToPoint2","pX","pY","_xScale$range","range","_xScale$range2","minX","maxX","_yScale$range","_yScale$range2","maxY","minY","_createClass","key","value","setContext","_scale$","_scale$$domain","_this$asProps","data","width","height","locale","resolveColor","yScaleDomain","domain","dataHintsHandler","setPointsDensity","Math","abs","$rootProps","size","render","_ref","_ref2","SPlot","_this$asProps2","styles","Children","a11yAltTextConfig","label","createElement","cn","_objectSpread","_assignProps","handlerMouseMove","handlerMouseLeave","plotId"],"sources":["../../src/Plot.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport EventEmitter from '@semcore/utils/lib/eventEmitter';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { eventToPoint, uniqueId } from './utils';\nimport { PlotA11yModule } from './a11y/PlotA11yModule';\nimport { makeDataHintsHandlers, makeDataHintsContainer } from './a11y/hints';\nimport colorResolverEnhance from '@semcore/utils/lib/enhances/resolveColorEnhance';\n\nimport style from './style/plot.shadow.css';\n\nclass PlotRoot extends Component {\n static displayName = 'Plot';\n static style = style;\n\n constructor(props) {\n super(props);\n this.eventEmitter = props.eventEmitter || new EventEmitter();\n }\n\n static defaultProps = () => ({\n width: 0,\n height: 0,\n });\n\n static enhance = [keyboardFocusEnhance(), colorResolverEnhance()];\n\n plotId = uniqueId();\n\n rootRef = React.createRef();\n\n dataStructureHints = makeDataHintsContainer();\n dataHintsHandler = makeDataHintsHandlers(this.dataStructureHints);\n\n handlerMouseMove = (e) => {\n const { scale } = this.asProps;\n this.eventEmitter.emit('onMouseMoveRoot', e);\n\n if (scale && scale.length >= 2) {\n const [xScale, yScale] = scale;\n const [pX, pY] = eventToPoint(e, this.rootRef.current);\n const [minX, maxX] = xScale.range();\n const [maxY, minY] = yScale.range();\n\n if (pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) {\n this.eventEmitter.emit('onMouseMoveChart', e);\n } else {\n this.eventEmitter.emit('onMouseLeaveChart', e);\n }\n }\n };\n\n handlerMouseLeave = (e) => {\n this.eventEmitter.emit('onMouseLeaveRoot', e);\n this.eventEmitter.emit('onMouseLeaveChart', e);\n };\n\n setContext() {\n const { scale, data, width, height, locale, resolveColor } = this.asProps;\n\n const yScaleDomain = scale?.[1]?.domain?.();\n if (yScaleDomain?.length && data?.length) {\n this.dataHintsHandler.setPointsDensity(\n data.length / width,\n Math.abs(yScaleDomain[1] - yScaleDomain[0]) / height,\n );\n }\n\n return {\n $rootProps: {\n size: [width, height],\n data: data,\n locale,\n scale: scale,\n eventEmitter: this.eventEmitter,\n rootRef: this.rootRef,\n dataHintsHandler: this.dataHintsHandler,\n resolveColor,\n },\n };\n }\n\n render() {\n const SPlot = Root;\n const { styles, width, height, Children, data, a11yAltTextConfig, label, locale } =\n this.asProps;\n\n if (!width || !height) return null;\n\n return sstyled(styles)(\n <SPlot\n render={Box}\n tag='svg'\n __excludeProps={['data', 'scale']}\n ref={this.rootRef}\n onMouseMove={this.handlerMouseMove}\n onMouseLeave={this.handlerMouseLeave}\n aria-label={label}\n tabIndex={0}\n >\n <Children />\n <foreignObject width='100%' height='100%' data-aria-only>\n <PlotA11yModule\n id={this.plotId}\n data={data}\n plotLabel={label}\n locale={locale}\n plotRef={this.rootRef}\n hints={this.dataStructureHints}\n config={a11yAltTextConfig}\n />\n </foreignObject>\n </SPlot>,\n );\n }\n}\n\nexport default createComponent(PlotRoot);\n"],"mappings":"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"}
|
package/lib/es6/Radar.js
CHANGED
|
@@ -18,26 +18,26 @@ import canUseDOM from '@semcore/utils/lib/canUseDOM';
|
|
|
18
18
|
import { polygonContains } from 'd3-polygon';
|
|
19
19
|
import { line, lineRadial, curveLinearClosed, arc } from 'd3-shape';
|
|
20
20
|
import createElement from './createElement';
|
|
21
|
-
import { CONSTANT, eventToPoint, measureText } from './utils';
|
|
21
|
+
import { CONSTANT, eventToPoint, getChartDefaultColorName, measureText } from './utils';
|
|
22
22
|
import Tooltip from './Tooltip';
|
|
23
23
|
/*__reshadow-styles__:"./style/radar.shadow.css"*/
|
|
24
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
25
|
-
"__SAxis": "
|
|
26
|
-
"__SAxisLine": "
|
|
27
|
-
"__SAxisTick": "
|
|
28
|
-
"_active": "
|
|
29
|
-
"__SAxisLabel": "
|
|
30
|
-
"_xDirection": "
|
|
31
|
-
"--xDirection": "--
|
|
32
|
-
"_yDirection": "
|
|
33
|
-
"--yDirection": "--
|
|
34
|
-
"__SPolygon": "
|
|
35
|
-
"_color": "
|
|
36
|
-
"--color": "--
|
|
37
|
-
"__SPolygonDot": "
|
|
38
|
-
"_transparent": "
|
|
39
|
-
"__SPolygonLine": "
|
|
40
|
-
"__SPieRect": "
|
|
24
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SAxisLine_sfvhj_gg_,.___SAxisTick_sfvhj_gg_,.___SAxis_sfvhj_gg_{stroke:var(--intergalactic-chart-grid-line, #e0e1e9);stroke-width:1;fill:transparent}.___SAxisLine_sfvhj_gg_,.___SAxisTick_sfvhj_gg_{stroke-dasharray:2}.___SAxisLine_sfvhj_gg_.__active_sfvhj_gg_{stroke:var(--intergalactic-chart-grid-y-accent-hover-line, #a9abb6)}.___SAxisLabel_sfvhj_gg_{text-anchor:middle;dominant-baseline:central;font-size:12px}.___SAxisLabel_sfvhj_gg_.__xDirection_sfvhj_gg_{text-anchor:var(--xDirection_sfvhj)}.___SAxisLabel_sfvhj_gg_.__yDirection_sfvhj_gg_{dominant-baseline:var(--yDirection_sfvhj)}.___SPolygonDot_sfvhj_gg_,.___SPolygon_sfvhj_gg_{fill:var(--intergalactic-chart-palette-order-1, #2bb3ff)}.___SPolygon_sfvhj_gg_{opacity:.2}.___SPolygon_sfvhj_gg_.__color_sfvhj_gg_{fill:var(--color_sfvhj)}.___SPolygonDot_sfvhj_gg_{stroke-width:2px;stroke:var(--intergalactic-chart-grid-border, #ffffff);r:6px}.___SPolygonDot_sfvhj_gg_.__transparent_sfvhj_gg_{opacity:.3}.___SPolygonDot_sfvhj_gg_.__color_sfvhj_gg_{fill:var(--color_sfvhj)}.___SPolygonLine_sfvhj_gg_{stroke:var(--intergalactic-chart-palette-order-1, #2bb3ff);stroke-width:3;fill:transparent}.___SPolygonLine_sfvhj_gg_.__transparent_sfvhj_gg_{opacity:.3}.___SPolygonLine_sfvhj_gg_.__color_sfvhj_gg_{stroke:var(--color_sfvhj)}.___SPieRect_sfvhj_gg_{fill:var(--intergalactic-chart-grid-bar-chart-hover, rgba(196, 199, 207, 0.3))}" /*__inner_css_end__*/, "sfvhj_gg_") /*__reshadow_css_end__*/, {
|
|
25
|
+
"__SAxis": "___SAxis_sfvhj_gg_",
|
|
26
|
+
"__SAxisLine": "___SAxisLine_sfvhj_gg_",
|
|
27
|
+
"__SAxisTick": "___SAxisTick_sfvhj_gg_",
|
|
28
|
+
"_active": "__active_sfvhj_gg_",
|
|
29
|
+
"__SAxisLabel": "___SAxisLabel_sfvhj_gg_",
|
|
30
|
+
"_xDirection": "__xDirection_sfvhj_gg_",
|
|
31
|
+
"--xDirection": "--xDirection_sfvhj",
|
|
32
|
+
"_yDirection": "__yDirection_sfvhj_gg_",
|
|
33
|
+
"--yDirection": "--yDirection_sfvhj",
|
|
34
|
+
"__SPolygon": "___SPolygon_sfvhj_gg_",
|
|
35
|
+
"_color": "__color_sfvhj_gg_",
|
|
36
|
+
"--color": "--color_sfvhj",
|
|
37
|
+
"__SPolygonDot": "___SPolygonDot_sfvhj_gg_",
|
|
38
|
+
"_transparent": "__transparent_sfvhj_gg_",
|
|
39
|
+
"__SPolygonLine": "___SPolygonLine_sfvhj_gg_",
|
|
40
|
+
"__SPieRect": "___SPieRect_sfvhj_gg_"
|
|
41
41
|
});
|
|
42
42
|
var clampAngle = function clampAngle(angle) {
|
|
43
43
|
angle = angle % (2 * Math.PI);
|
|
@@ -180,7 +180,7 @@ var RadarRoot = /*#__PURE__*/function (_Component) {
|
|
|
180
180
|
}
|
|
181
181
|
}, {
|
|
182
182
|
key: "getPolygonProps",
|
|
183
|
-
value: function getPolygonProps(_ref16) {
|
|
183
|
+
value: function getPolygonProps(_ref16, index) {
|
|
184
184
|
var dataKey = _ref16.dataKey;
|
|
185
185
|
var _this$asProps2 = this.asProps,
|
|
186
186
|
data = _this$asProps2.data,
|
|
@@ -190,7 +190,8 @@ var RadarRoot = /*#__PURE__*/function (_Component) {
|
|
|
190
190
|
offset: this.offset,
|
|
191
191
|
data: data[dataKey] || [],
|
|
192
192
|
scale: scale,
|
|
193
|
-
angleOffset: angleOffset
|
|
193
|
+
angleOffset: angleOffset,
|
|
194
|
+
color: getChartDefaultColorName(index)
|
|
194
195
|
};
|
|
195
196
|
}
|
|
196
197
|
}, {
|
|
@@ -263,6 +264,7 @@ var PolygonRoot = /*#__PURE__*/function (_Component2) {
|
|
|
263
264
|
data = _this$asProps4.data,
|
|
264
265
|
scale = _this$asProps4.scale,
|
|
265
266
|
color = _this$asProps4.color,
|
|
267
|
+
resolveColor = _this$asProps4.resolveColor,
|
|
266
268
|
transparent = _this$asProps4.transparent,
|
|
267
269
|
dataKey = _this$asProps4.dataKey,
|
|
268
270
|
dataHintsHandler = _this$asProps4.dataHintsHandler,
|
|
@@ -271,6 +273,7 @@ var PolygonRoot = /*#__PURE__*/function (_Component2) {
|
|
|
271
273
|
data: data,
|
|
272
274
|
scale: scale,
|
|
273
275
|
color: color,
|
|
276
|
+
resolveColor: resolveColor,
|
|
274
277
|
transparent: transparent,
|
|
275
278
|
categoryKey: dataKey,
|
|
276
279
|
dataHintsHandler: dataHintsHandler,
|
|
@@ -284,10 +287,12 @@ var PolygonRoot = /*#__PURE__*/function (_Component2) {
|
|
|
284
287
|
d3 = _this$asProps5.d3,
|
|
285
288
|
data = _this$asProps5.data,
|
|
286
289
|
color = _this$asProps5.color,
|
|
290
|
+
resolveColor = _this$asProps5.resolveColor,
|
|
287
291
|
transparent = _this$asProps5.transparent;
|
|
288
292
|
return {
|
|
289
293
|
data: data,
|
|
290
294
|
color: color,
|
|
295
|
+
resolveColor: resolveColor,
|
|
291
296
|
transparent: transparent,
|
|
292
297
|
d3: d3
|
|
293
298
|
};
|
|
@@ -302,11 +307,12 @@ var PolygonRoot = /*#__PURE__*/function (_Component2) {
|
|
|
302
307
|
d3 = _this$asProps6.d3,
|
|
303
308
|
data = _this$asProps6.data,
|
|
304
309
|
color = _this$asProps6.color,
|
|
310
|
+
resolveColor = _this$asProps6.resolveColor,
|
|
305
311
|
fill = _this$asProps6.fill;
|
|
306
312
|
return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(SPolygon, _ref3.cn("SPolygon", {
|
|
307
313
|
"render": 'path',
|
|
308
314
|
"d": d3(data),
|
|
309
|
-
"color": fill || color
|
|
315
|
+
"color": resolveColor(fill || color)
|
|
310
316
|
}));
|
|
311
317
|
}
|
|
312
318
|
}]);
|
|
@@ -336,12 +342,13 @@ function PolygonLine(props) {
|
|
|
336
342
|
styles = props.styles,
|
|
337
343
|
d3 = props.d3,
|
|
338
344
|
color = props.color,
|
|
345
|
+
resolveColor = props.resolveColor,
|
|
339
346
|
data = props.data,
|
|
340
347
|
transparent = props.transparent;
|
|
341
348
|
return _ref4 = sstyled(styles), /*#__PURE__*/React.createElement(SPolygonLine, _ref4.cn("SPolygonLine", {
|
|
342
349
|
"render": 'path',
|
|
343
350
|
"d": d3(data),
|
|
344
|
-
"color": color,
|
|
351
|
+
"color": resolveColor(color),
|
|
345
352
|
"transparent": transparent
|
|
346
353
|
}));
|
|
347
354
|
}
|
|
@@ -349,6 +356,7 @@ function PolygonDots(props) {
|
|
|
349
356
|
var SPolygonDot = props.Element,
|
|
350
357
|
styles = props.styles,
|
|
351
358
|
color = props.color,
|
|
359
|
+
resolveColor = props.resolveColor,
|
|
352
360
|
data = props.data,
|
|
353
361
|
scale = props.scale,
|
|
354
362
|
transparent = props.transparent,
|
|
@@ -368,7 +376,7 @@ function PolygonDots(props) {
|
|
|
368
376
|
"render": 'circle',
|
|
369
377
|
"cx": cx,
|
|
370
378
|
"cy": cy,
|
|
371
|
-
"color": color,
|
|
379
|
+
"color": resolveColor(color),
|
|
372
380
|
"transparent": transparent
|
|
373
381
|
}));
|
|
374
382
|
});
|