@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/StackBar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StackBar.js","names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Bar","MIN_HEIGHT","HorizontalBar","MIN_WIDTH","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","_createClass","key","value","getSeries","_this$asProps","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackBar","props","hide","push","y","x","getBarProps","_ref","_this2","_this$offsetBars$seri","_ref$hMin","hMin","_this$asProps2","r","scale","maxBarSize","_scale","_slicedToArray","yScale","seriesIndex","series","findIndex","s","rBar","map","i","slice","some","bar","offsetBars","_objectSpread2","_objectSpread","calcOffset","_d$XY","_d$XY2","offset","offsetBar","_offsetBar$i","d","absHeight","Math","abs","min","domain","Number","y0","groupKey","getHorizontalBarProps","_ref2","_this3","_this$offsetBars$seri2","_ref2$wMin","wMin","_this$asProps3","_scale2","xScale","_objectSpread3","_d$XY3","_d$XY4","_offsetBar$i2","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }) {\n const { x, r, scale, maxBarSize } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[y] - (d[XY0] ?? 0)) === 0 ? 0 : absHeight >= hMin ? 0 : d[y] > 0 ? hMin : -hMin;\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }) {\n const { y, r, scale, maxBarSize } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n const rBar = series.map((s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: rBar,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StackBar.js","names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Bar","MIN_HEIGHT","HorizontalBar","MIN_WIDTH","getChartDefaultColorName","DEFAULT_INSTANCE","Symbol","XY0","StackBarRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","_createClass","key","value","getSeries","_this$asProps","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackBar","props","hide","push","y","x","getBarProps","_ref","index","_this2","_this$offsetBars$seri","_ref$hMin","hMin","_this$asProps2","r","scale","maxBarSize","_scale","_slicedToArray","yScale","seriesIndex","series","findIndex","s","rBar","map","i","slice","some","bar","offsetBars","_objectSpread2","_objectSpread","calcOffset","_d$XY","_d$XY2","offset","offsetBar","_offsetBar$i","d","absHeight","Math","abs","min","domain","Number","y0","groupKey","color","getHorizontalBarProps","_ref2","_this3","_this$offsetBars$seri2","_ref2$wMin","wMin","_this$asProps3","_scale2","xScale","_objectSpread3","_d$XY3","_d$XY4","_offsetBar$i2","absWidth","max","x0","render","Element","dataHintsHandler","establishDataType"],"sources":["../../src/StackBar.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Bar, { MIN_HEIGHT } from './Bar';\nimport HorizontalBar, { MIN_WIDTH } from './HorizontalBar';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst XY0 = Symbol('XY0');\n\nclass StackBarRoot extends Component {\n static displayName = 'StackBar';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack, r: 2 };\n };\n\n offsetBars = [];\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackBar.Bar && !child.props.hide) {\n acc.push(child.props.y);\n }\n if (\n React.isValidElement(child) &&\n child.type === StackBar.HorizontalBar &&\n !child.props.hide\n ) {\n acc.push(child.props.x);\n }\n return acc;\n }, []);\n stack.keys(keys);\n }\n\n return stack(data);\n }\n\n getBarProps({ y, hMin = MIN_HEIGHT }, index) {\n const { x, r, scale, maxBarSize } = this.asProps;\n const [, yScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === y);\n // or [] if hide bar\n const series = this.series[seriesIndex] || [];\n\n const rBar = series.map((s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [y]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absHeight = Math.abs(\n yScale(d[y]) - Math.min(yScale(yScale.domain()[0]), yScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[y] - (d[XY0] ?? 0)) === 0 ? 0 : absHeight >= hMin ? 0 : d[y] > 0 ? hMin : -hMin;\n return [0, offset];\n };\n\n return {\n data,\n hMin,\n y0: XY0,\n x,\n r: rBar,\n groupKey: x,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize } = this.asProps;\n const [xScale] = scale;\n\n const seriesIndex = this.series.findIndex((s) => s.key === x);\n const series = this.series[seriesIndex];\n\n const rBar = series.map((s, i) =>\n this.series.slice(seriesIndex + 1).some((bar) => bar[i][0] !== bar[i][1]) ? 0 : r,\n );\n\n this.offsetBars[seriesIndex] = this.offsetBars[seriesIndex] ?? [];\n const data = series.map((s) => ({\n ...s.data,\n [x]: s[1],\n [XY0]: s[0],\n }));\n\n const calcOffset = (i) => {\n const offset = this.offsetBars.reduce((offset, offsetBar) => offset - (offsetBar[i] ?? 0), 0);\n const d = data[i];\n const absWidth = Math.abs(\n xScale(d[x]) - Math.max(xScale(xScale.domain()[0]), xScale(d[XY0] ?? 0)),\n );\n this.offsetBars[seriesIndex][i] =\n Number(d[x] - (d[XY0] ?? 0)) === 0 ? 0 : absWidth >= wMin ? 0 : d[x] > 0 ? -wMin : wMin;\n return [offset, 0];\n };\n\n return {\n data,\n wMin,\n x0: XY0,\n y,\n r: rBar,\n groupKey: y,\n offset: calcOffset,\n maxBarSize,\n color: getChartDefaultColorName(index),\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n\n this.asProps.dataHintsHandler.establishDataType('grouped-values');\n\n this.offsetBars = [];\n\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackBar = createElement(StackBarRoot, {\n Bar,\n HorizontalBar,\n});\n\nexport default StackBar;\n"],"mappings":"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"}
|
package/lib/es6/StackedArea.js
CHANGED
|
@@ -10,6 +10,7 @@ import { Component } from '@semcore/core';
|
|
|
10
10
|
import getOriginChildren from '@semcore/utils/lib/getOriginChildren';
|
|
11
11
|
import createElement from './createElement';
|
|
12
12
|
import Area from './Area';
|
|
13
|
+
import { getChartDefaultColorName } from './utils';
|
|
13
14
|
var DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');
|
|
14
15
|
var Y0 = Symbol('Y0');
|
|
15
16
|
var StackedAreaRoot = /*#__PURE__*/function (_Component) {
|
|
@@ -39,7 +40,7 @@ var StackedAreaRoot = /*#__PURE__*/function (_Component) {
|
|
|
39
40
|
}
|
|
40
41
|
}, {
|
|
41
42
|
key: "getAreaProps",
|
|
42
|
-
value: function getAreaProps(_ref) {
|
|
43
|
+
value: function getAreaProps(_ref, index) {
|
|
43
44
|
var y = _ref.y;
|
|
44
45
|
var x = this.asProps.x;
|
|
45
46
|
// or [] if hide area
|
|
@@ -47,6 +48,7 @@ var StackedAreaRoot = /*#__PURE__*/function (_Component) {
|
|
|
47
48
|
return s.key === y;
|
|
48
49
|
}) || [];
|
|
49
50
|
return {
|
|
51
|
+
color: getChartDefaultColorName(index),
|
|
50
52
|
data: series.map(function (s) {
|
|
51
53
|
var _objectSpread2;
|
|
52
54
|
return _objectSpread(_objectSpread({}, s.data), {}, (_objectSpread2 = {}, _defineProperty(_objectSpread2, y, s.data[y] === null ? null : s[1]), _defineProperty(_objectSpread2, Y0, s[0]), _objectSpread2));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StackedArea.js","names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Area","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getSeries","_this$asProps","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackedArea","props","hide","push","y","reverse","getAreaProps","_ref","x","series","find","s","map","_objectSpread2","_objectSpread","_defineProperty","y0","render","Element"],"sources":["../../src/StackedArea.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Area from './Area';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst Y0 = Symbol('Y0');\n\nclass StackedAreaRoot extends Component {\n static displayName = 'StackedArea';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack };\n };\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {\n acc.push(child.props.y);\n }\n return acc;\n }, []);\n stack.keys(keys.reverse());\n }\n\n return stack(data);\n }\n\n getAreaProps({ y }) {\n const { x } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\n data: series.map((s) => ({\n ...s.data,\n // if null is passed in the data, then we pass it, because d3 null leads to 0\n [y]: s.data[y] === null ? null : s[1],\n [Y0]: s[0],\n })),\n y0: Y0,\n x,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackedArea = createElement(StackedAreaRoot, { Area });\n\nexport default StackedArea;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,KAAK,IAAIC,OAAO,QAAQ,UAAU;AAC3C,SAASC,SAAS,QAAQ,eAAe;AACzC,OAAOC,iBAAiB,MAAM,sCAAsC;AACpE,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,IAAI,MAAM,QAAQ;
|
|
1
|
+
{"version":3,"file":"StackedArea.js","names":["React","stack","d3Stack","Component","getOriginChildren","createElement","Area","getChartDefaultColorName","DEFAULT_INSTANCE","Symbol","Y0","StackedAreaRoot","_Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","key","value","getSeries","_this$asProps","asProps","Children","data","keys","toArray","reduce","acc","child","isValidElement","type","StackedArea","props","hide","push","y","reverse","getAreaProps","_ref","index","x","series","find","s","color","map","_objectSpread2","_objectSpread","_defineProperty","y0","render","Element"],"sources":["../../src/StackedArea.jsx"],"sourcesContent":["import React from 'react';\nimport { stack as d3Stack } from 'd3-shape';\nimport { Component } from '@semcore/core';\nimport getOriginChildren from '@semcore/utils/lib/getOriginChildren';\nimport createElement from './createElement';\nimport Area from './Area';\nimport { getChartDefaultColorName } from './utils';\n\nconst DEFAULT_INSTANCE = Symbol('DEFAULT_INSTANCE');\nconst Y0 = Symbol('Y0');\n\nclass StackedAreaRoot extends Component {\n static displayName = 'StackedArea';\n\n static defaultProps = () => {\n const stack = d3Stack();\n stack[DEFAULT_INSTANCE] = true;\n return { stack };\n };\n\n getSeries() {\n const { Children, data, stack } = this.asProps;\n\n if (stack[DEFAULT_INSTANCE]) {\n const keys = React.Children.toArray(getOriginChildren(Children)).reduce((acc, child) => {\n if (React.isValidElement(child) && child.type === StackedArea.Area && !child.props.hide) {\n acc.push(child.props.y);\n }\n return acc;\n }, []);\n stack.keys(keys.reverse());\n }\n\n return stack(data);\n }\n\n getAreaProps({ y }, index) {\n const { x } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\n color: getChartDefaultColorName(index),\n data: series.map((s) => ({\n ...s.data,\n // if null is passed in the data, then we pass it, because d3 null leads to 0\n [y]: s.data[y] === null ? null : s[1],\n [Y0]: s[0],\n })),\n y0: Y0,\n x,\n };\n }\n\n render() {\n const Element = this.Element;\n this.series = this.getSeries();\n return <Element aria-hidden render='g' series={this.series} />;\n }\n}\n\nconst StackedArea = createElement(StackedAreaRoot, { Area });\n\nexport default StackedArea;\n"],"mappings":"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"}
|
package/lib/es6/Tooltip.js
CHANGED
|
@@ -17,18 +17,26 @@ import { Component, Root, sstyled } from '@semcore/core';
|
|
|
17
17
|
import Popper from '@semcore/popper';
|
|
18
18
|
import { Box } from '@semcore/flex-box';
|
|
19
19
|
import findComponent from '@semcore/utils/lib/findComponent';
|
|
20
|
-
import resolveColor from '@semcore/utils/lib/color';
|
|
21
20
|
import createElement from './createElement';
|
|
22
|
-
import { CONSTANT } from './utils';
|
|
21
|
+
import { CONSTANT, getChartDefaultColorName } from './utils';
|
|
22
|
+
import { useColorResolver } from '@semcore/utils/lib/use/useColorResolver';
|
|
23
23
|
/*__reshadow-styles__:"./style/tooltip.shadow.css"*/
|
|
24
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
25
|
-
"__STooltip": "
|
|
26
|
-
"__STitle": "
|
|
27
|
-
"__SDotGroup": "
|
|
28
|
-
"__SDot": "
|
|
29
|
-
"_color": "
|
|
30
|
-
"--color": "--
|
|
31
|
-
"__SFooter": "
|
|
24
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___STooltip_1t16r_gg_{font-size:var(--intergalactic-fs-100, 12px);line-height:var(--intergalactic-lh-100, 133%);position:relative;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);border-radius:var(--intergalactic-popper-rounded, 6px);border:1px solid var(--intergalactic-border-secondary, #e0e1e9);box-sizing:border-box;box-shadow:var(--intergalactic-box-shadow-popper, 0px 1px 12px 0px rgba(25, 27, 35, 0.15));padding:var(--intergalactic-spacing-3x, 12px)}.___STitle_1t16r_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SDotGroup_1t16r_gg_{display:flex;align-items:center}.___SDot_1t16r_gg_{width:8px;height:8px;border-radius:50%;margin-right:var(--intergalactic-spacing-2x, 8px);background:var(--intergalactic-icon-secondary-info, #2bb3ff)}.___SDot_1t16r_gg_.__color_1t16r_gg_{background:var(--color_1t16r)}.___SFooter_1t16r_gg_{background:var(--intergalactic-bg-secondary-neutral, #f4f5f9);padding:var(--intergalactic-spacing-1x, 4px) var(--intergalactic-spacing-3x, 12px);border-radius:0 0 var(--intergalactic-rounded-medium, 6px) var(--intergalactic-rounded-medium, 6px);margin:var(--intergalactic-spacing-3x, 12px) calc(-1*var(--intergalactic-spacing-3x, 12px)) calc(-1*var(--intergalactic-spacing-3x, 12px))}" /*__inner_css_end__*/, "1t16r_gg_") /*__reshadow_css_end__*/, {
|
|
25
|
+
"__STooltip": "___STooltip_1t16r_gg_",
|
|
26
|
+
"__STitle": "___STitle_1t16r_gg_",
|
|
27
|
+
"__SDotGroup": "___SDotGroup_1t16r_gg_",
|
|
28
|
+
"__SDot": "___SDot_1t16r_gg_",
|
|
29
|
+
"_color": "__color_1t16r_gg_",
|
|
30
|
+
"--color": "--color_1t16r",
|
|
31
|
+
"__SFooter": "___SFooter_1t16r_gg_"
|
|
32
|
+
});
|
|
33
|
+
/**
|
|
34
|
+
* `TooltipDotRenderContext` is a hack to bypass problem that getDotProps doesn't work for D3 tooltip.
|
|
35
|
+
* Probably it may be removed after migrating to a new core.
|
|
36
|
+
*/
|
|
37
|
+
var TooltipDotRenderContext = /*#__PURE__*/React.createContext({
|
|
38
|
+
index: -1,
|
|
39
|
+
indexKeysCache: new Set()
|
|
32
40
|
});
|
|
33
41
|
var TooltipRoot = /*#__PURE__*/function (_Component) {
|
|
34
42
|
_inherits(TooltipRoot, _Component);
|
|
@@ -45,6 +53,10 @@ var TooltipRoot = /*#__PURE__*/function (_Component) {
|
|
|
45
53
|
anchorProps: {},
|
|
46
54
|
tooltipProps: {}
|
|
47
55
|
});
|
|
56
|
+
_defineProperty(_assertThisInitialized(_this), "renderContext", {
|
|
57
|
+
index: -1,
|
|
58
|
+
indexKeysCache: new Set()
|
|
59
|
+
});
|
|
48
60
|
_defineProperty(_assertThisInitialized(_this), "handlerCancel", function () {
|
|
49
61
|
return false;
|
|
50
62
|
});
|
|
@@ -114,7 +126,11 @@ var TooltipRoot = /*#__PURE__*/function (_Component) {
|
|
|
114
126
|
forcedAdvancedMode = _this$asProps3.forcedAdvancedMode,
|
|
115
127
|
other = _objectWithoutProperties(_this$asProps3, _excluded);
|
|
116
128
|
var advancedMode = forcedAdvancedMode || !!findComponent(Children, [Tooltip.Trigger.displayName, Tooltip.Popper.displayName]);
|
|
117
|
-
|
|
129
|
+
this.renderContext.index = -1;
|
|
130
|
+
this.renderContext.indexKeysCache.clear();
|
|
131
|
+
return /*#__PURE__*/React.createElement(TooltipDotRenderContext.Provider, {
|
|
132
|
+
value: this.renderContext
|
|
133
|
+
}, /*#__PURE__*/React.createElement(Popper, _assignProps({
|
|
118
134
|
"visible": this.state.$visible,
|
|
119
135
|
"onFirstUpdate": this.handlerCancel,
|
|
120
136
|
"onOutsideClick": this.handlerCancel,
|
|
@@ -133,7 +149,7 @@ var TooltipRoot = /*#__PURE__*/function (_Component) {
|
|
|
133
149
|
return advancedMode ? /*#__PURE__*/React.createElement(Children, null) : /*#__PURE__*/React.createElement(React.Fragment, null, tag && /*#__PURE__*/React.createElement(Tooltip.Trigger, {
|
|
134
150
|
tag: tag
|
|
135
151
|
}), /*#__PURE__*/React.createElement(Tooltip.Popper, other, children));
|
|
136
|
-
});
|
|
152
|
+
}));
|
|
137
153
|
}
|
|
138
154
|
}]);
|
|
139
155
|
return TooltipRoot;
|
|
@@ -176,12 +192,20 @@ function Dot(props) {
|
|
|
176
192
|
var styles = props.styles,
|
|
177
193
|
color = props.color,
|
|
178
194
|
Children = props.Children;
|
|
195
|
+
var resolveColor = useColorResolver();
|
|
196
|
+
var renderContext = React.useContext(TooltipDotRenderContext);
|
|
197
|
+
var defaultColor = getChartDefaultColorName(renderContext.index);
|
|
198
|
+
var key = Children;
|
|
199
|
+
if (!renderContext.indexKeysCache.has(key)) {
|
|
200
|
+
renderContext.indexKeysCache.add(key);
|
|
201
|
+
renderContext.index += 1;
|
|
202
|
+
}
|
|
179
203
|
var SDotGroup = Box;
|
|
180
204
|
var SDot = Box;
|
|
181
205
|
return _ref7 = sstyled(styles), /*#__PURE__*/React.createElement(SDotGroup, _ref7.cn("SDotGroup", _objectSpread({}, _assignProps3({
|
|
182
206
|
"__excludeProps": ['data', 'scale']
|
|
183
207
|
}, _ref3))), /*#__PURE__*/React.createElement(SDot, _ref7.cn("SDot", {
|
|
184
|
-
"color": resolveColor(color)
|
|
208
|
+
"color": resolveColor(color !== null && color !== void 0 ? color : defaultColor)
|
|
185
209
|
})), /*#__PURE__*/React.createElement(Children, _ref7.cn("Children", {})));
|
|
186
210
|
}
|
|
187
211
|
Dot.style = style;
|
package/lib/es6/Tooltip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","names":["React","Component","Root","sstyled","Popper","Box","findComponent","resolveColor","createElement","CONSTANT","style","_sstyled","insert","TooltipRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","$visible","anchorProps","tooltipProps","_createClass","key","value","getTriggerProps","_this$asProps","asProps","x","y","getPopperProps","excludeAnchorProps","_objectSpread","state","componentDidMount","_this2","_this$asProps2","eventEmitter","rootRef","unsubscribeTooltipVisible","subscribe","visible","node","setState","VIRTUAL_ELEMENT","current","contains","_this2$popper$current","setPopperTrigger","popper","update","componentWillUnmount","render","_ref","_this3","_this$asProps3","Children","children","tag","forcedAdvancedMode","other","_objectWithoutProperties","_excluded","advancedMode","Tooltip","Trigger","displayName","_assignProps","handlerCancel","allowedAutoPlacements","_ref9","_this3$popper$current","setTrigger","Fragment","PopperPopper","props","_ref5","STooltip","Element","styles","useCallback","cn","Title","_ref2","arguments[0]","_ref6","STitle","_assignProps2","Dot","_ref3","_ref7","color","SDotGroup","SDot","_assignProps3","Footer","_ref4","_ref8","SFooter","_assignProps4"],"sources":["../../src/Tooltip.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Popper from '@semcore/popper';\nimport { Box } from '@semcore/flex-box';\nimport findComponent from '@semcore/utils/lib/findComponent';\nimport resolveColor from '@semcore/utils/lib/color';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\n\nimport style from './style/tooltip.shadow.css';\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n anchorProps: {},\n tooltipProps: {},\n };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n // TODO: как то убрать\n const { x, y } = this.asProps;\n return { x, y };\n }\n\n getPopperProps() {\n if (this.asProps.excludeAnchorProps) {\n return {\n $visible: this.state.$visible,\n ...this.state.tooltipProps,\n };\n }\n\n return {\n $visible: this.state.$visible,\n ...this.state.anchorProps,\n ...this.state.tooltipProps,\n };\n }\n\n componentDidMount() {\n const { eventEmitter, rootRef } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'onTooltipVisible',\n (visible, anchorProps, tooltipProps, node) => {\n this.setState(\n {\n anchorProps,\n tooltipProps,\n $visible: visible,\n },\n () => {\n if (node && (node[CONSTANT.VIRTUAL_ELEMENT] || rootRef.current.contains(node))) {\n this?.setPopperTrigger(node);\n this.popper.current?.update();\n }\n },\n );\n },\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeTooltipVisible) {\n this.unsubscribeTooltipVisible();\n }\n }\n\n render() {\n const { Children, children, tag, forcedAdvancedMode, ...other } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n !!findComponent(Children, [Tooltip.Trigger.displayName, Tooltip.Popper.displayName]);\n return (\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction='none'\n offset={8}\n flip={{ allowedAutoPlacements: ['left', 'right'] }}\n >\n {({ popper, setTrigger }) => {\n this.setPopperTrigger = setTrigger;\n this.popper = popper;\n this.popper.current?.update();\n return advancedMode ? (\n <Children />\n ) : (\n <>\n {tag && <Tooltip.Trigger tag={tag} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n );\n }\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = React.useCallback(() => false, []);\n\n if (!$visible) return null;\n\n return sstyled(styles)(\n <STooltip\n render={Popper.Popper}\n childrenPosition='inside'\n onMouseMove={handlerCancel}\n x={x}\n y={y}\n />,\n );\n}\nPopperPopper.style = style;\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\nTitle.style = style;\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const SDotGroup = Root;\n const SDot = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} __excludeProps={['data', 'scale']}>\n <SDot color={resolveColor(color)} />\n <Children />\n </SDotGroup>,\n );\n}\nDot.style = style;\n\nfunction Footer(props) {\n const { styles } = props;\n const SFooter = Root;\n return sstyled(styles)(<SFooter render={Box} __excludeProps={['data', 'scale']} />);\n}\nFooter.style = style;\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: Popper.Trigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Tooltip.js","names":["React","Component","Root","sstyled","Popper","Box","findComponent","createElement","CONSTANT","getChartDefaultColorName","useColorResolver","style","_sstyled","insert","TooltipDotRenderContext","createContext","index","indexKeysCache","Set","TooltipRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","$visible","anchorProps","tooltipProps","_createClass","key","value","getTriggerProps","_this$asProps","asProps","x","y","getPopperProps","excludeAnchorProps","_objectSpread","state","componentDidMount","_this2","_this$asProps2","eventEmitter","rootRef","unsubscribeTooltipVisible","subscribe","visible","node","setState","VIRTUAL_ELEMENT","current","contains","_this2$popper$current","setPopperTrigger","popper","update","componentWillUnmount","render","_ref","_this3","_this$asProps3","Children","children","tag","forcedAdvancedMode","other","_objectWithoutProperties","_excluded","advancedMode","Tooltip","Trigger","displayName","renderContext","clear","Provider","_assignProps","handlerCancel","allowedAutoPlacements","_ref9","_this3$popper$current","setTrigger","Fragment","PopperPopper","props","_ref5","STooltip","Element","styles","useCallback","cn","Title","_ref2","arguments[0]","_ref6","STitle","_assignProps2","Dot","_ref3","_ref7","color","resolveColor","useContext","defaultColor","has","add","SDotGroup","SDot","_assignProps3","Footer","_ref4","_ref8","SFooter","_assignProps4"],"sources":["../../src/Tooltip.jsx"],"sourcesContent":["import React from 'react';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Popper from '@semcore/popper';\nimport { Box } from '@semcore/flex-box';\nimport findComponent from '@semcore/utils/lib/findComponent';\nimport createElement from './createElement';\nimport { CONSTANT, getChartDefaultColorName } from './utils';\nimport { useColorResolver } from '@semcore/utils/lib/use/useColorResolver';\n\nimport style from './style/tooltip.shadow.css';\n\n/**\n * `TooltipDotRenderContext` is a hack to bypass problem that getDotProps doesn't work for D3 tooltip.\n * Probably it may be removed after migrating to a new core.\n */\nconst TooltipDotRenderContext = React.createContext({ index: -1, indexKeysCache: new Set() });\n\nclass TooltipRoot extends Component {\n static displayName = 'Tooltip';\n\n static style = style;\n\n state = {\n $visible: false,\n anchorProps: {},\n tooltipProps: {},\n };\n\n renderContext = { index: -1, indexKeysCache: new Set() };\n\n handlerCancel = () => false;\n\n getTriggerProps() {\n // TODO: как то убрать\n const { x, y } = this.asProps;\n return { x, y };\n }\n\n getPopperProps() {\n if (this.asProps.excludeAnchorProps) {\n return {\n $visible: this.state.$visible,\n ...this.state.tooltipProps,\n };\n }\n\n return {\n $visible: this.state.$visible,\n ...this.state.anchorProps,\n ...this.state.tooltipProps,\n };\n }\n\n componentDidMount() {\n const { eventEmitter, rootRef } = this.asProps;\n this.unsubscribeTooltipVisible = eventEmitter.subscribe(\n 'onTooltipVisible',\n (visible, anchorProps, tooltipProps, node) => {\n this.setState(\n {\n anchorProps,\n tooltipProps,\n $visible: visible,\n },\n () => {\n if (node && (node[CONSTANT.VIRTUAL_ELEMENT] || rootRef.current.contains(node))) {\n this?.setPopperTrigger(node);\n this.popper.current?.update();\n }\n },\n );\n },\n );\n }\n\n componentWillUnmount() {\n if (this.unsubscribeTooltipVisible) {\n this.unsubscribeTooltipVisible();\n }\n }\n\n render() {\n const { Children, children, tag, forcedAdvancedMode, ...other } = this.asProps;\n\n const advancedMode =\n forcedAdvancedMode ||\n !!findComponent(Children, [Tooltip.Trigger.displayName, Tooltip.Popper.displayName]);\n this.renderContext.index = -1;\n this.renderContext.indexKeysCache.clear();\n return (\n <TooltipDotRenderContext.Provider value={this.renderContext}>\n <Root\n render={Popper}\n visible={this.state.$visible}\n onFirstUpdate={this.handlerCancel}\n onOutsideClick={this.handlerCancel}\n interaction='none'\n offset={8}\n flip={{ allowedAutoPlacements: ['left', 'right'] }}\n >\n {({ popper, setTrigger }) => {\n this.setPopperTrigger = setTrigger;\n this.popper = popper;\n this.popper.current?.update();\n return advancedMode ? (\n <Children />\n ) : (\n <>\n {tag && <Tooltip.Trigger tag={tag} />}\n <Tooltip.Popper {...other}>{children}</Tooltip.Popper>\n </>\n );\n }}\n </Root>\n </TooltipDotRenderContext.Provider>\n );\n }\n}\n\nfunction PopperPopper(props) {\n const { Element: STooltip, styles, $visible, x, y } = props;\n\n const handlerCancel = React.useCallback(() => false, []);\n\n if (!$visible) return null;\n\n return sstyled(styles)(\n <STooltip\n render={Popper.Popper}\n childrenPosition='inside'\n onMouseMove={handlerCancel}\n x={x}\n y={y}\n />,\n );\n}\nPopperPopper.style = style;\n\nfunction Title(props) {\n const STitle = Root;\n const { styles } = props;\n return sstyled(styles)(<STitle render={Box} __excludeProps={['data', 'scale']} />);\n}\nTitle.style = style;\n\nfunction Dot(props) {\n const { styles, color, Children } = props;\n const resolveColor = useColorResolver();\n const renderContext = React.useContext(TooltipDotRenderContext);\n const defaultColor = getChartDefaultColorName(renderContext.index);\n\n const key = Children;\n if (!renderContext.indexKeysCache.has(key)) {\n renderContext.indexKeysCache.add(key);\n renderContext.index += 1;\n }\n const SDotGroup = Root;\n const SDot = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} __excludeProps={['data', 'scale']}>\n <SDot color={resolveColor(color ?? defaultColor)} />\n <Children />\n </SDotGroup>,\n );\n}\nDot.style = style;\n\nfunction Footer(props) {\n const { styles } = props;\n const SFooter = Root;\n return sstyled(styles)(<SFooter render={Box} __excludeProps={['data', 'scale']} />);\n}\nFooter.style = style;\n\nconst Tooltip = createElement(TooltipRoot, {\n Trigger: Popper.Trigger,\n Popper: PopperPopper,\n Title,\n Footer,\n Dot,\n});\n\nexport default Tooltip;\n"],"mappings":"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"}
|
package/lib/es6/Venn.js
CHANGED
|
@@ -15,16 +15,16 @@ import { Component, Root, sstyled } from '@semcore/core';
|
|
|
15
15
|
import canUseDOM from '@semcore/utils/lib/canUseDOM';
|
|
16
16
|
import { FadeInOut } from '@semcore/animation';
|
|
17
17
|
import createElement from './createElement';
|
|
18
|
-
import { CONSTANT } from './utils';
|
|
18
|
+
import { CONSTANT, getChartDefaultColorName } from './utils';
|
|
19
19
|
import Tooltip from './Tooltip';
|
|
20
20
|
/*__reshadow-styles__:"./style/venn.shadow.css"*/
|
|
21
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
22
|
-
"__SCircle": "
|
|
23
|
-
"--duration": "--
|
|
24
|
-
"_color": "
|
|
25
|
-
"--color": "--
|
|
26
|
-
"_transparent": "
|
|
27
|
-
"__SIntersection": "
|
|
21
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SCircle_13cxd_gg_,.___SIntersection_13cxd_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px}.___SCircle_13cxd_gg_{fill:var(--intergalactic-chart-palette-order-2, #59ddaa);fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_13cxd);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_13cxd_gg_:hover{fill-opacity:.7}}.___SCircle_13cxd_gg_.__color_13cxd_gg_{fill:var(--color_13cxd)}.___SCircle_13cxd_gg_.__transparent_13cxd_gg_{opacity:.3}.___SIntersection_13cxd_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_13cxd_gg_:hover{fill-opacity:.1}}.___SIntersection_13cxd_gg_.__transparent_13cxd_gg_{opacity:.3}" /*__inner_css_end__*/, "13cxd_gg_") /*__reshadow_css_end__*/, {
|
|
22
|
+
"__SCircle": "___SCircle_13cxd_gg_",
|
|
23
|
+
"--duration": "--duration_13cxd",
|
|
24
|
+
"_color": "__color_13cxd_gg_",
|
|
25
|
+
"--color": "--color_13cxd",
|
|
26
|
+
"_transparent": "__transparent_13cxd_gg_",
|
|
27
|
+
"__SIntersection": "___SIntersection_13cxd_gg_"
|
|
28
28
|
});
|
|
29
29
|
var VennRoot = /*#__PURE__*/function (_Component) {
|
|
30
30
|
_inherits(VennRoot, _Component);
|
|
@@ -97,11 +97,13 @@ var VennRoot = /*#__PURE__*/function (_Component) {
|
|
|
97
97
|
}
|
|
98
98
|
}, {
|
|
99
99
|
key: "getCircleProps",
|
|
100
|
-
value: function getCircleProps(props) {
|
|
100
|
+
value: function getCircleProps(props, index) {
|
|
101
|
+
var colorBackwardCapabilityOffset = 1;
|
|
102
|
+
var color = props.color || getChartDefaultColorName(index + colorBackwardCapabilityOffset);
|
|
101
103
|
var tooltipProps = {
|
|
102
104
|
dataKey: props.dataKey,
|
|
103
105
|
name: props.name,
|
|
104
|
-
color:
|
|
106
|
+
color: color
|
|
105
107
|
};
|
|
106
108
|
return {
|
|
107
109
|
duration: this.asProps.duration,
|
|
@@ -109,7 +111,9 @@ var VennRoot = /*#__PURE__*/function (_Component) {
|
|
|
109
111
|
originalData: this.asProps.data[props.dataKey],
|
|
110
112
|
onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),
|
|
111
113
|
onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),
|
|
112
|
-
transparent: this.asProps.transparent
|
|
114
|
+
transparent: this.asProps.transparent,
|
|
115
|
+
resolveColor: this.asProps.resolveColor,
|
|
116
|
+
color: color
|
|
113
117
|
};
|
|
114
118
|
}
|
|
115
119
|
}, {
|
|
@@ -135,7 +139,8 @@ var VennRoot = /*#__PURE__*/function (_Component) {
|
|
|
135
139
|
originalData: this.asProps.data[props.dataKey],
|
|
136
140
|
onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),
|
|
137
141
|
onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),
|
|
138
|
-
transparent: transparent
|
|
142
|
+
transparent: transparent,
|
|
143
|
+
resolveColor: this.asProps.resolveColor
|
|
139
144
|
};
|
|
140
145
|
}
|
|
141
146
|
}, {
|
|
@@ -168,6 +173,7 @@ function Circle(_ref8) {
|
|
|
168
173
|
var SCircle = _ref8.Element,
|
|
169
174
|
styles = _ref8.styles,
|
|
170
175
|
color = _ref8.color,
|
|
176
|
+
resolveColor = _ref8.resolveColor,
|
|
171
177
|
data = _ref8.data,
|
|
172
178
|
duration = _ref8.duration,
|
|
173
179
|
name = _ref8.name,
|
|
@@ -178,7 +184,7 @@ function Circle(_ref8) {
|
|
|
178
184
|
return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SCircle, _ref2.cn("SCircle", {
|
|
179
185
|
"aria-hidden": true,
|
|
180
186
|
"render": 'circle',
|
|
181
|
-
"color": color,
|
|
187
|
+
"color": resolveColor(color),
|
|
182
188
|
"cx": data.x,
|
|
183
189
|
"cy": data.y,
|
|
184
190
|
"r": data.radius,
|
package/lib/es6/Venn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Venn.js","names":["React","venn","normalizeSolution","scaleSolution","intersectionAreaPath","Component","Root","sstyled","canUseDOM","FadeInOut","createElement","CONSTANT","Tooltip","style","_sstyled","insert","VennRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","document","visible","props","tooltipProps","_ref5","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","forwardRef","ref","_extends","tag","_createClass","key","value","undefined","width","height","top","right","bottom","left","getVennData","_this$asProps","data","orientation","orientationOrder","size","_size","_slicedToArray","vennData","Object","entries","map","_ref6","_ref7","dataKey","sets","split","getCircleProps","name","color","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","getIntersectionProps","_this$asProps2","dataKeys","delay","values","filter","d","includes","setid","render","Element","dataHintsHandler","establishDataType","renderElement","childrenPosition","Math","PI","c1","c2","radius","Circle","_ref8","_ref2","SCircle","styles","describeValueEntity","cn","Intersection","_ref3","SIntersection","renderIntersection","useCallback","VennTooltip","_ref","arguments[0]","_ref4","SVennTooltip","_objectSpread","_assignProps","Venn","_______childrenComponents"],"sources":["../../src/Venn.jsx"],"sourcesContent":["import React from 'react';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\nimport createElement from './createElement';\nimport { CONSTANT } from './utils';\nimport Tooltip from './Tooltip';\n\nimport style from './style/venn.shadow.css';\n\nclass VennRoot extends Component {\n static displayName = 'Venn';\n static style = style;\n\n static defaultProps = {\n orientation: Math.PI / 2,\n orientationOrder: (c1, c2) => c2.radius - c1.radius,\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, tooltipProps, this.virtualElement);\n };\n\n getVennData() {\n const { data, orientation, orientationOrder, size } = this.asProps;\n const [width, height] = size;\n const vennData = Object.entries(data).map(([dataKey, size]) => ({\n sets: dataKey.split('/'),\n size,\n }));\n return scaleSolution(\n normalizeSolution(venn(vennData), orientation, orientationOrder),\n width,\n height,\n 10,\n );\n }\n\n getCircleProps(props) {\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color: props.color,\n };\n\n return {\n duration: this.asProps.duration,\n data: this.vennData[props.dataKey],\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent: this.asProps.transparent,\n };\n }\n\n getIntersectionProps(props) {\n const { duration, transparent } = this.asProps;\n const dataKeys = props.dataKey.split('/');\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color: props.color,\n duration: props.duration,\n transparent: props.transparent,\n };\n\n return {\n duration,\n delay: duration,\n data: Object.values(this.vennData).filter((d) => dataKeys.includes(d.setid)),\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent,\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='g' visible {...props} />;\n });\n\n render() {\n const Element = this.Element;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n this.vennData = this.getVennData();\n return (\n <Element\n aria-hidden\n render={this.renderElement}\n childrenPosition='inside'\n vennData={this.vennData}\n />\n );\n }\n}\n\nfunction Circle({\n Element: SCircle,\n styles,\n color,\n data,\n duration,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n return sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={color}\n cx={data.x}\n cy={data.y}\n r={data.radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\n />,\n );\n}\n\nfunction Intersection(props) {\n const {\n Element: SIntersection,\n styles,\n data,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n } = props;\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const renderIntersection = React.useCallback(\n React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='path' visible {...props} />;\n }),\n [props],\n );\n return sstyled(styles)(\n <SIntersection\n aria-hidden\n render={renderIntersection}\n d={intersectionAreaPath(data)}\n transparent={transparent}\n />,\n );\n}\n\nconst VennTooltip = (props) => {\n const SVennTooltip = Root;\n return sstyled(props.styles)(<SVennTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst Venn = createElement(VennRoot, {\n Circle,\n Intersection,\n Tooltip: [VennTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Venn;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Venn.js","names":["React","venn","normalizeSolution","scaleSolution","intersectionAreaPath","Component","Root","sstyled","canUseDOM","FadeInOut","createElement","CONSTANT","getChartDefaultColorName","Tooltip","style","_sstyled","insert","VennRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","document","visible","props","tooltipProps","_ref5","x","clientX","y","clientY","eventEmitter","asProps","virtualElement","getBoundingClientRect","generateGetBoundingClientRect","VIRTUAL_ELEMENT","emit","forwardRef","ref","_extends","tag","_createClass","key","value","undefined","width","height","top","right","bottom","left","getVennData","_this$asProps","data","orientation","orientationOrder","size","_size","_slicedToArray","vennData","Object","entries","map","_ref6","_ref7","dataKey","sets","split","getCircleProps","index","colorBackwardCapabilityOffset","color","name","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","resolveColor","getIntersectionProps","_this$asProps2","dataKeys","delay","values","filter","d","includes","setid","render","Element","dataHintsHandler","establishDataType","renderElement","childrenPosition","Math","PI","c1","c2","radius","Circle","_ref8","_ref2","SCircle","styles","describeValueEntity","cn","Intersection","_ref3","SIntersection","renderIntersection","useCallback","VennTooltip","_ref","arguments[0]","_ref4","SVennTooltip","_objectSpread","_assignProps","Venn","_______childrenComponents"],"sources":["../../src/Venn.jsx"],"sourcesContent":["import React from 'react';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\nimport createElement from './createElement';\nimport { CONSTANT, getChartDefaultColorName } from './utils';\nimport Tooltip from './Tooltip';\n\nimport style from './style/venn.shadow.css';\n\nclass VennRoot extends Component {\n static displayName = 'Venn';\n static style = style;\n\n static defaultProps = {\n orientation: Math.PI / 2,\n orientationOrder: (c1, c2) => c2.radius - c1.radius,\n duration: 500,\n };\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX: x, clientY: y }) => {\n const { eventEmitter } = this.asProps;\n this.virtualElement.getBoundingClientRect = this.generateGetBoundingClientRect(x, y);\n this.virtualElement[CONSTANT.VIRTUAL_ELEMENT] = true;\n eventEmitter.emit('onTooltipVisible', visible, props, tooltipProps, this.virtualElement);\n };\n\n getVennData() {\n const { data, orientation, orientationOrder, size } = this.asProps;\n const [width, height] = size;\n const vennData = Object.entries(data).map(([dataKey, size]) => ({\n sets: dataKey.split('/'),\n size,\n }));\n return scaleSolution(\n normalizeSolution(venn(vennData), orientation, orientationOrder),\n width,\n height,\n 10,\n );\n }\n\n getCircleProps(props, index) {\n const colorBackwardCapabilityOffset = 1;\n const color = props.color || getChartDefaultColorName(index + colorBackwardCapabilityOffset);\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color,\n };\n\n return {\n duration: this.asProps.duration,\n data: this.vennData[props.dataKey],\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent: this.asProps.transparent,\n resolveColor: this.asProps.resolveColor,\n color,\n };\n }\n\n getIntersectionProps(props) {\n const { duration, transparent } = this.asProps;\n const dataKeys = props.dataKey.split('/');\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color: props.color,\n duration: props.duration,\n transparent: props.transparent,\n };\n\n return {\n duration,\n delay: duration,\n data: Object.values(this.vennData).filter((d) => dataKeys.includes(d.setid)),\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent,\n resolveColor: this.asProps.resolveColor,\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='g' visible {...props} />;\n });\n\n render() {\n const Element = this.Element;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n this.vennData = this.getVennData();\n return (\n <Element\n aria-hidden\n render={this.renderElement}\n childrenPosition='inside'\n vennData={this.vennData}\n />\n );\n }\n}\n\nfunction Circle({\n Element: SCircle,\n styles,\n color,\n resolveColor,\n data,\n duration,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n return sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={resolveColor(color)}\n cx={data.x}\n cy={data.y}\n r={data.radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\n />,\n );\n}\n\nfunction Intersection(props) {\n const {\n Element: SIntersection,\n styles,\n data,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n } = props;\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const renderIntersection = React.useCallback(\n React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='path' visible {...props} />;\n }),\n [props],\n );\n return sstyled(styles)(\n <SIntersection\n aria-hidden\n render={renderIntersection}\n d={intersectionAreaPath(data)}\n transparent={transparent}\n />,\n );\n}\n\nconst VennTooltip = (props) => {\n const SVennTooltip = Root;\n return sstyled(props.styles)(<SVennTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst Venn = createElement(VennRoot, {\n Circle,\n Intersection,\n Tooltip: [VennTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Venn;\n"],"mappings":"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"}
|
|
@@ -10,8 +10,8 @@ import { normalizeLocale } from './locale';
|
|
|
10
10
|
import { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';
|
|
11
11
|
import { Root, sstyled } from '@semcore/core';
|
|
12
12
|
/*__reshadow-styles__:"../style/plotA11yModule.shadow.css"*/
|
|
13
|
-
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
14
|
-
"__SPlotA11yModule": "
|
|
13
|
+
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlotA11yModule_1qhiz_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_1qhiz_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}" /*__inner_css_end__*/, "1qhiz_gg_") /*__reshadow_css_end__*/, {
|
|
14
|
+
"__SPlotA11yModule": "___SPlotA11yModule_1qhiz_gg_"
|
|
15
15
|
});
|
|
16
16
|
import { Context as I18nContext, useI18n } from '@semcore/utils/lib/enhances/WithI18n';
|
|
17
17
|
import { Box } from '@semcore/flex-box';
|
|
@@ -13,9 +13,9 @@ import { getIntl } from './intl';
|
|
|
13
13
|
import { summarize } from './summarize';
|
|
14
14
|
import { Root, sstyled } from '@semcore/core';
|
|
15
15
|
/*__reshadow-styles__:"../style/plotA11yView.shadow.css"*/
|
|
16
|
-
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
17
|
-
"__SPlotA11yView": "
|
|
18
|
-
"_focus-within": "__focus-
|
|
16
|
+
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlotA11yView_1woe7_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);color:var(--intergalactic-text-primary, #191b23);border:3px solid var(--intergalactic-border-primary, #c4c7cf);font-size:var(--intergalactic-fs-50, 10px);padding:2px;width:200px;height:200px;max-width:80%;max-height:80%;overflow:auto}.___SPlotA11yView_1woe7_gg_.__focus-within_1woe7_gg_,.___SPlotA11yView_1woe7_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay, 500);position:relative;display:block}.___SPlotA11yView_1woe7_gg_:focus,.___SPlotA11yView_1woe7_gg_:focus-within{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay, 500);position:relative;display:block}.___SPlotA11yView_1woe7_gg_ a{cursor:pointer;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_1woe7_gg_ table,.___SPlotA11yView_1woe7_gg_ td,.___SPlotA11yView_1woe7_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}" /*__inner_css_end__*/, "1woe7_gg_") /*__reshadow_css_end__*/, {
|
|
17
|
+
"__SPlotA11yView": "___SPlotA11yView_1woe7_gg_",
|
|
18
|
+
"_focus-within": "__focus-within_1woe7_gg_"
|
|
19
19
|
});
|
|
20
20
|
import { Box } from '@semcore/flex-box';
|
|
21
21
|
import { useAsyncI18nMessages } from '@semcore/utils/lib/enhances/i18nEnhance';
|
package/lib/es6/color.js
CHANGED
|
@@ -123,18 +123,5 @@ var colors = {
|
|
|
123
123
|
"violet-700": "#421984",
|
|
124
124
|
"violet-800": "#220358"
|
|
125
125
|
};
|
|
126
|
-
var componentRenderIndex = 0;
|
|
127
|
-
var cache = {};
|
|
128
|
-
var colorValues = Object.keys(colors).sort(function (a, b) {
|
|
129
|
-
return parseInt(a.match(/[0-9]/g).join(''), 10) - parseInt(b.match(/[0-9]/g).join(''), 10);
|
|
130
|
-
});
|
|
131
126
|
export { colors };
|
|
132
|
-
export default function getColor(key) {
|
|
133
|
-
if (cache[key]) {
|
|
134
|
-
return cache[key];
|
|
135
|
-
}
|
|
136
|
-
var color = colors[colorValues[componentRenderIndex++]];
|
|
137
|
-
cache[key] = color;
|
|
138
|
-
return color;
|
|
139
|
-
}
|
|
140
127
|
//# sourceMappingURL=color.js.map
|
package/lib/es6/color.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color.js","names":["colors"
|
|
1
|
+
{"version":3,"file":"color.js","names":["colors"],"sources":["../../src/color.js"],"sourcesContent":["/*__semcore-vars__:\"./style/var.css\"*/\nconst colors = preval`\n const path = require('path');\n module.exports = require('@semcore/babel-plugin-react-semcore').getColorVars(path.resolve(__dirname, './style/var.css'));\n`;\n\nexport { colors };\n"],"mappings":"AAAA;AACA,IAAMA,MAAM;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA,CAGX;AAED,SAASA,MAAM"}
|
|
@@ -31,7 +31,6 @@ SIcon[transparent] {
|
|
|
31
31
|
|
|
32
32
|
SLabel {
|
|
33
33
|
fill: var(--color);
|
|
34
|
-
cursor: var(--text-cursor);
|
|
35
34
|
}
|
|
36
35
|
|
|
37
36
|
SLabel[transparent] {
|
|
@@ -39,11 +38,12 @@ SLabel[transparent] {
|
|
|
39
38
|
}
|
|
40
39
|
|
|
41
40
|
SRadian:hover SLabel {
|
|
42
|
-
|
|
41
|
+
cursor: pointer;
|
|
42
|
+
filter: brightness(0.6);
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
@media (prefers-reduced-motion) {
|
|
46
46
|
SLineCap {
|
|
47
47
|
transition: none;
|
|
48
48
|
}
|
|
49
|
-
}
|
|
49
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Area.d.js","names":[],"sources":["../../../src/types/Area.d.ts"],"sourcesContent":["import { UnknownProperties } from '@semcore/core';\nimport { Context } from './context';\nimport { CurveFactory } from 'd3-shape';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface IAreaProps extends AreaProps, UnknownProperties {}\nexport type AreaProps = Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis*/\n y?: string;\n /** Line color
|
|
1
|
+
{"version":3,"file":"Area.d.js","names":[],"sources":["../../../src/types/Area.d.ts"],"sourcesContent":["import { UnknownProperties } from '@semcore/core';\nimport { Context } from './context';\nimport { CurveFactory } from 'd3-shape';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface IAreaProps extends AreaProps, UnknownProperties {}\nexport type AreaProps = Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis*/\n y?: string;\n /** Line color */\n color?: string;\n /** Element hide property */\n hide?: boolean;\n /** Curve method */\n curve?: CurveFactory;\n /** Animation duration in ms\n * @default 500\n */\n duration?: number;\n /** Enables element transparency */\n transparent?: boolean;\n};\n\n/** @deprecated */\nexport interface IAreaDotsProps extends AreaDotsProps, UnknownProperties {}\nexport type AreaDotsProps = Context & {\n /** Show all Dot */\n display?: boolean;\n /** Hide property */\n hide?: boolean;\n /** Enables element transparency */\n transparent?: boolean;\n};\n\n/** @deprecated */\nexport interface IAreaDotsContext extends AreaDotsContext, UnknownProperties {}\nexport type AreaDotsContext = {\n /** Value element of data */\n /** @deprecated */\n value?: any;\n /** Index element of data */\n index?: number;\n};\n\n/** @deprecated */\nexport interface IAreaNullProps extends AreaNullProps, UnknownProperties {}\nexport type AreaNullProps = Context & {\n /** Hide property */\n hide?: boolean;\n};\n\ndeclare const Area: IntergalacticD3Component<'path', AreaProps, Context> & {\n Dots: IntergalacticD3Component<'circle', AreaDotsProps, AreaDotsContext>;\n Null: IntergalacticD3Component<'path', AreaNullProps, Context>;\n Line: IntergalacticD3Component<'path', Context, Context>;\n};\n\nexport default Area;\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Bar.d.js","names":[],"sources":["../../../src/types/Bar.d.ts"],"sourcesContent":["import { UnknownProperties } from '@semcore/core';\nimport { Context } from './context';\nimport { IntergalacticD3Component } from './Plot';\nimport { ScaleBand, ScaleLinear } from 'd3-scale';\n\n/** @deprecated */\nexport interface IBarProps extends BarProps, UnknownProperties {}\nexport type BarProps = Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis */\n y?: string;\n /** Line color
|
|
1
|
+
{"version":3,"file":"Bar.d.js","names":[],"sources":["../../../src/types/Bar.d.ts"],"sourcesContent":["import { UnknownProperties } from '@semcore/core';\nimport { Context } from './context';\nimport { IntergalacticD3Component } from './Plot';\nimport { ScaleBand, ScaleLinear } from 'd3-scale';\n\n/** @deprecated */\nexport interface IBarProps extends BarProps, UnknownProperties {}\nexport type BarProps = Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis */\n y?: string;\n /** Line color */\n color?: string;\n /** Element hide property */\n hide?: boolean;\n /** Animation duration in ms\n * @default 500\n */\n duration?: number;\n /** Radius of curvature\n * @default 2\n */\n r?: number | number[];\n /** Minimal height\n * @default 2\n */\n hMin?: number;\n /**\n * Bar click handler\n */\n onClick?: (data: { [key: string]: string | number }, event: Event) => void;\n /** Enables element transparency */\n transparent?: boolean;\n /**\n * The maximum width of each Bar\n */\n maxBarSize?: number;\n};\n\n/** @deprecated */\nexport interface IBarContext extends BarContext, UnknownProperties {}\nexport type BarContext = {\n scale: [ScaleBand<any>, ScaleLinear<any, any>];\n /** @deprecated */\n value: unknown;\n /** Index in `data` array */\n index: number;\n x: number;\n y: number;\n width: number;\n height: number;\n};\n\n/** @deprecated */\nexport interface IBackgroundProps extends BackgroundProps, UnknownProperties {}\nexport type BackgroundProps = Context & {\n /** Coordinate x */\n x?: number | string;\n /** Coordinate y */\n y?: number | string;\n /** Value element of data */\n /** @deprecated */\n value?: any;\n /** Width rect */\n width?: number | string;\n /** Height rect */\n height?: number | string;\n};\n\ntype BackgroundContext = Context & {\n /** Index in `data` array */\n index: number;\n};\n\ndeclare const Bar: IntergalacticD3Component<'rect', BarProps, BarContext> & {\n Background: IntergalacticD3Component<'rect', BackgroundProps, BackgroundContext>;\n};\n\nexport default Bar;\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Donut.d.js","names":[],"sources":["../../../src/types/Donut.d.ts"],"sourcesContent":["import { UnknownProperties } from '@semcore/core';\nimport { Context } from './context';\nimport { TooltipType } from './Tooltip';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface IDonutProps extends DonutProps, UnknownProperties {}\nexport type DonutProps = Context & {\n /** Inner radius\n * @default 0\n * */\n innerRadius?: number;\n /** Outer radius\n * @default calculated by the formula from width, height\n * */\n outerRadius?: number;\n /** Semi donut */\n halfsize?: boolean;\n /** Animation duration in ms. Set `0` to disable animation.\n * @default 500\n */\n duration?: number;\n /** Additional padding between segments in radians.\n * @default 0\n */\n paddingAngle?: number;\n};\n\n/** @deprecated */\nexport interface IPieProps extends PieProps, UnknownProperties {}\nexport type PieProps = Context & {\n /**\n * Name of the field in the data\n * */\n dataKey: string;\n /**\n * Human readable name of the segment\n * */\n name: string;\n /** Color pie
|
|
1
|
+
{"version":3,"file":"Donut.d.js","names":[],"sources":["../../../src/types/Donut.d.ts"],"sourcesContent":["import { UnknownProperties } from '@semcore/core';\nimport { Context } from './context';\nimport { TooltipType } from './Tooltip';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface IDonutProps extends DonutProps, UnknownProperties {}\nexport type DonutProps = Context & {\n /** Inner radius\n * @default 0\n * */\n innerRadius?: number;\n /** Outer radius\n * @default calculated by the formula from width, height\n * */\n outerRadius?: number;\n /** Semi donut */\n halfsize?: boolean;\n /** Animation duration in ms. Set `0` to disable animation.\n * @default 500\n */\n duration?: number;\n /** Additional padding between segments in radians.\n * @default 0\n */\n paddingAngle?: number;\n};\n\n/** @deprecated */\nexport interface IPieProps extends PieProps, UnknownProperties {}\nexport type PieProps = Context & {\n /**\n * Name of the field in the data\n * */\n dataKey: string;\n /**\n * Human readable name of the segment\n * */\n name: string;\n /** Color pie **/\n color?: string;\n /**\n * Active sector\n * */\n active?: boolean;\n /** Enables element transparency */\n transparent?: boolean;\n};\n\n/** @deprecated */\nexport interface IEmptyDataProps extends EmptyDataProps, UnknownProperties {}\nexport type EmptyDataProps = Context & {};\n\n/** @deprecated */\nexport interface ILabelProps extends LabelProps, UnknownProperties {}\nexport type LabelProps = Context & {\n label?: string;\n};\n\ndeclare const Donut: IntergalacticD3Component<'g', DonutProps> & {\n Pie: IntergalacticD3Component<'path', PieProps>;\n EmptyData: IntergalacticD3Component<'path', EmptyDataProps>;\n Label: IntergalacticD3Component<'text', LabelProps>;\n Tooltip: TooltipType<PieProps>;\n};\n\nexport default Donut;\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalBar.d.js","names":[],"sources":["../../../src/types/HorizontalBar.d.ts"],"sourcesContent":["import { UnknownProperties } from '@semcore/core';\nimport { Context } from './context';\nimport { BarContext, BackgroundProps } from './Bar';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface IHorizontalBarProps extends HorizontalBarProps, UnknownProperties {}\nexport type HorizontalBarProps = Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis */\n y?: string;\n /** Line color
|
|
1
|
+
{"version":3,"file":"HorizontalBar.d.js","names":[],"sources":["../../../src/types/HorizontalBar.d.ts"],"sourcesContent":["import { UnknownProperties } from '@semcore/core';\nimport { Context } from './context';\nimport { BarContext, BackgroundProps } from './Bar';\nimport { IntergalacticD3Component } from './Plot';\n\n/** @deprecated */\nexport interface IHorizontalBarProps extends HorizontalBarProps, UnknownProperties {}\nexport type HorizontalBarProps = Context & {\n /** Field name from `data` array item for the XAxis */\n x?: string;\n /** Field name from `data` array item for the YAxis */\n y?: string;\n /** Line color */\n color?: string;\n /** Animation duration in ms\n * @default 500\n */\n duration?: number;\n /** Radius of curvature\n * @default 2\n */\n r?: number | number[];\n /** Enables element transparency */\n transparent?: boolean;\n /**\n * The maximum width of each Bar\n */\n maxBarSize?: number;\n};\n\ndeclare const HorizontalBar: IntergalacticD3Component<'path', HorizontalBarProps, BarContext> & {\n Background: IntergalacticD3Component<'rect', BackgroundProps, Context>;\n};\n\nexport default HorizontalBar;\n"],"mappings":""}
|