@semcore/d3-chart 3.60.2 → 16.0.0-prerelease.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/lib/cjs/AnimatedClipPath.js +3 -4
- package/lib/cjs/AnimatedClipPath.js.map +1 -1
- package/lib/cjs/Area.js +14 -15
- package/lib/cjs/Area.js.map +1 -1
- package/lib/cjs/Axis.js +15 -16
- package/lib/cjs/Axis.js.map +1 -1
- package/lib/cjs/Bar.js +18 -19
- package/lib/cjs/Bar.js.map +1 -1
- package/lib/cjs/Bubble.js +13 -14
- package/lib/cjs/Bubble.js.map +1 -1
- package/lib/cjs/CompactHorizontalBar.js +20 -21
- package/lib/cjs/CompactHorizontalBar.js.map +1 -1
- package/lib/cjs/Donut.js +12 -13
- package/lib/cjs/Donut.js.map +1 -1
- package/lib/cjs/Dots.js +10 -11
- package/lib/cjs/Dots.js.map +1 -1
- package/lib/cjs/GroupBar.js +2 -2
- package/lib/cjs/GroupBar.js.map +1 -1
- package/lib/cjs/HorizontalBar.js +18 -19
- package/lib/cjs/HorizontalBar.js.map +1 -1
- package/lib/cjs/Hover.js +5 -6
- package/lib/cjs/Hover.js.map +1 -1
- package/lib/cjs/Line.js +11 -12
- package/lib/cjs/Line.js.map +1 -1
- package/lib/cjs/Pattern.js +1 -1
- package/lib/cjs/Pattern.js.map +1 -1
- package/lib/cjs/Plot.js +9 -11
- package/lib/cjs/Plot.js.map +1 -1
- package/lib/cjs/Radar.js +23 -24
- package/lib/cjs/Radar.js.map +1 -1
- package/lib/cjs/RadialTree.js +17 -18
- package/lib/cjs/RadialTree.js.map +1 -1
- package/lib/cjs/Reference.js +14 -15
- package/lib/cjs/Reference.js.map +1 -1
- package/lib/cjs/ResponsiveContainer.js +6 -7
- package/lib/cjs/ResponsiveContainer.js.map +1 -1
- package/lib/cjs/ScatterPlot.js +11 -12
- package/lib/cjs/ScatterPlot.js.map +1 -1
- package/lib/cjs/StackBar.js +1 -1
- package/lib/cjs/StackBar.js.map +1 -1
- package/lib/cjs/StackedArea.js +1 -1
- package/lib/cjs/StackedArea.js.map +1 -1
- package/lib/cjs/Tooltip.js +11 -12
- package/lib/cjs/Tooltip.js.map +1 -1
- package/lib/cjs/Venn.js +11 -12
- package/lib/cjs/Venn.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yModule.js +3 -4
- package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yView.js +3 -4
- package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
- package/lib/cjs/a11y/focus.js +1 -1
- package/lib/cjs/a11y/focus.js.map +1 -1
- package/lib/cjs/a11y/hints.js +1 -1
- package/lib/cjs/a11y/hints.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.js +2 -2
- package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/AreaChart.js +3 -3
- package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
- package/lib/cjs/component/Chart/BarChart.js +3 -3
- package/lib/cjs/component/Chart/BarChart.js.map +1 -1
- package/lib/cjs/component/Chart/BubbleChart.js +3 -3
- package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.js +5 -6
- package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +3 -3
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/cjs/component/Chart/DonutChart.js +3 -3
- package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
- package/lib/cjs/component/Chart/HistogramChart.js +3 -3
- package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
- package/lib/cjs/component/Chart/LineChart.js +3 -3
- package/lib/cjs/component/Chart/LineChart.js.map +1 -1
- package/lib/cjs/component/Chart/RadarChart.js +3 -3
- package/lib/cjs/component/Chart/RadarChart.js.map +1 -1
- package/lib/cjs/component/Chart/ScatterPlotChart.js +3 -3
- package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/cjs/component/Chart/VennChart.js +3 -3
- package/lib/cjs/component/Chart/VennChart.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +7 -9
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +21 -23
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +8 -10
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
- package/lib/cjs/component/Cigarette/Cigarette.js +2 -2
- package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/cjs/createElement.js +6 -7
- package/lib/cjs/createElement.js.map +1 -1
- package/lib/cjs/style/hover.shadow.css +2 -2
- package/lib/cjs/utils.js +1 -1
- package/lib/cjs/utils.js.map +1 -1
- package/lib/es6/AnimatedClipPath.js +2 -2
- package/lib/es6/AnimatedClipPath.js.map +1 -1
- package/lib/es6/Area.js +14 -14
- package/lib/es6/Area.js.map +1 -1
- package/lib/es6/Axis.js +15 -15
- package/lib/es6/Bar.js +18 -18
- package/lib/es6/Bar.js.map +1 -1
- package/lib/es6/Bubble.js +14 -14
- package/lib/es6/Bubble.js.map +1 -1
- package/lib/es6/CompactHorizontalBar.js +21 -21
- package/lib/es6/CompactHorizontalBar.js.map +1 -1
- package/lib/es6/Donut.js +13 -13
- package/lib/es6/Donut.js.map +1 -1
- package/lib/es6/Dots.js +10 -10
- package/lib/es6/Dots.js.map +1 -1
- package/lib/es6/GroupBar.js +2 -2
- package/lib/es6/GroupBar.js.map +1 -1
- package/lib/es6/HorizontalBar.js +18 -18
- package/lib/es6/HorizontalBar.js.map +1 -1
- package/lib/es6/Hover.js +6 -6
- package/lib/es6/Hover.js.map +1 -1
- package/lib/es6/Line.js +11 -11
- package/lib/es6/Line.js.map +1 -1
- package/lib/es6/Pattern.js +1 -1
- package/lib/es6/Pattern.js.map +1 -1
- package/lib/es6/Plot.js +9 -9
- package/lib/es6/Plot.js.map +1 -1
- package/lib/es6/Radar.js +24 -24
- package/lib/es6/Radar.js.map +1 -1
- package/lib/es6/RadialTree.js +17 -17
- package/lib/es6/RadialTree.js.map +1 -1
- package/lib/es6/Reference.js +14 -14
- package/lib/es6/Reference.js.map +1 -1
- package/lib/es6/ResponsiveContainer.js +5 -5
- package/lib/es6/ResponsiveContainer.js.map +1 -1
- package/lib/es6/ScatterPlot.js +12 -12
- package/lib/es6/ScatterPlot.js.map +1 -1
- package/lib/es6/StackBar.js +1 -1
- package/lib/es6/StackBar.js.map +1 -1
- package/lib/es6/StackedArea.js +1 -1
- package/lib/es6/StackedArea.js.map +1 -1
- package/lib/es6/Tooltip.js +12 -12
- package/lib/es6/Tooltip.js.map +1 -1
- package/lib/es6/Venn.js +12 -12
- package/lib/es6/Venn.js.map +1 -1
- package/lib/es6/a11y/PlotA11yModule.js +4 -4
- package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
- package/lib/es6/a11y/PlotA11yView.js +4 -4
- package/lib/es6/a11y/PlotA11yView.js.map +1 -1
- package/lib/es6/a11y/focus.js +1 -1
- package/lib/es6/a11y/focus.js.map +1 -1
- package/lib/es6/a11y/hints.js +1 -1
- package/lib/es6/a11y/hints.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.js +2 -2
- package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/es6/component/Chart/AreaChart.js +2 -2
- package/lib/es6/component/Chart/AreaChart.js.map +1 -1
- package/lib/es6/component/Chart/BarChart.js +2 -2
- package/lib/es6/component/Chart/BarChart.js.map +1 -1
- package/lib/es6/component/Chart/BubbleChart.js +2 -2
- package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.js +4 -4
- package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js +2 -2
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/es6/component/Chart/DonutChart.js +2 -2
- package/lib/es6/component/Chart/DonutChart.js.map +1 -1
- package/lib/es6/component/Chart/HistogramChart.js +2 -2
- package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
- package/lib/es6/component/Chart/LineChart.js +2 -2
- package/lib/es6/component/Chart/LineChart.js.map +1 -1
- package/lib/es6/component/Chart/RadarChart.js +2 -2
- package/lib/es6/component/Chart/RadarChart.js.map +1 -1
- package/lib/es6/component/Chart/ScatterPlotChart.js +2 -2
- package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/es6/component/Chart/VennChart.js +2 -2
- package/lib/es6/component/Chart/VennChart.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +7 -7
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +21 -21
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +8 -8
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
- package/lib/es6/component/Cigarette/Cigarette.js +2 -2
- package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/es6/createElement.js +5 -5
- package/lib/es6/createElement.js.map +1 -1
- package/lib/es6/style/hover.shadow.css +2 -2
- package/lib/es6/utils.js +1 -1
- package/lib/es6/utils.js.map +1 -1
- package/lib/esm/AnimatedClipPath.mjs +2 -2
- package/lib/esm/Area.mjs +18 -19
- package/lib/esm/Axis.mjs +21 -22
- package/lib/esm/Bar.mjs +21 -22
- package/lib/esm/Bubble.mjs +17 -18
- package/lib/esm/CompactHorizontalBar.mjs +31 -32
- package/lib/esm/Donut.mjs +18 -19
- package/lib/esm/Dots.mjs +14 -15
- package/lib/esm/GroupBar.mjs +1 -1
- package/lib/esm/HorizontalBar.mjs +21 -22
- package/lib/esm/Hover.mjs +11 -12
- package/lib/esm/Line.mjs +15 -16
- package/lib/esm/Pattern.mjs +1 -1
- package/lib/esm/Plot.mjs +10 -11
- package/lib/esm/Radar.mjs +37 -38
- package/lib/esm/RadialTree.mjs +28 -29
- package/lib/esm/Reference.mjs +20 -21
- package/lib/esm/ResponsiveContainer.mjs +5 -5
- package/lib/esm/ScatterPlot.mjs +15 -16
- package/lib/esm/StackBar.mjs +1 -1
- package/lib/esm/StackedArea.mjs +1 -1
- package/lib/esm/Tooltip.mjs +17 -18
- package/lib/esm/Venn.mjs +16 -17
- package/lib/esm/a11y/PlotA11yModule.mjs +9 -10
- package/lib/esm/a11y/PlotA11yView.mjs +6 -7
- package/lib/esm/a11y/focus.mjs +1 -1
- package/lib/esm/a11y/hints.mjs +1 -1
- package/lib/esm/component/Chart/AbstractChart.mjs +2 -2
- package/lib/esm/component/Chart/AreaChart.mjs +2 -2
- package/lib/esm/component/Chart/BarChart.mjs +2 -2
- package/lib/esm/component/Chart/BubbleChart.mjs +2 -2
- package/lib/esm/component/Chart/CigaretteChart.mjs +4 -4
- package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +2 -2
- package/lib/esm/component/Chart/DonutChart.mjs +2 -2
- package/lib/esm/component/Chart/HistogramChart.mjs +2 -2
- package/lib/esm/component/Chart/LineChart.mjs +2 -2
- package/lib/esm/component/Chart/RadarChart.mjs +2 -2
- package/lib/esm/component/Chart/ScatterPlotChart.mjs +2 -2
- package/lib/esm/component/Chart/VennChart.mjs +2 -2
- package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +8 -9
- package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +29 -30
- package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +10 -11
- package/lib/esm/component/Cigarette/Cigarette.mjs +2 -2
- package/lib/esm/createElement.mjs +5 -5
- package/lib/esm/style/hover.shadow.css +2 -2
- package/lib/esm/utils.mjs +1 -1
- package/lib/types/component/Chart/AbstractChart.type.d.ts +1 -1
- package/lib/types/utils.d.ts +1 -1
- package/package.json +11 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScatterPlot.js","names":["React","transition","Component","Root","sstyled","canUseDOM","uniqueIDEnhancement","createElement","getScatterPlotRadius","Tooltip","PatternFill","style","_sstyled","insert","ScatterPlotRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","document","visible","props","tooltipProps","_ref4","clientX","clientY","eventEmitter","asProps","emit","_createClass","key","value","generateGetBoundingClientRect","x","undefined","y","width","height","top","right","bottom","left","animationCircle","_this$asProps","duration","uid","r","radius","selectRect","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","renderCircle","d","i","_ref2","_this$asProps2","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","_scale","_slicedToArray","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","index","render","_this$asProps3","_scale2","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","_objectSpread","_assignProps","ScatterPlot","_______childrenComponents"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport createElement from './createElement';\nimport { getScatterPlotRadius } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill } from './Pattern';\n\nimport style from './style/scatterplot.shadow.css';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\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, clientY }) => {\n const { eventEmitter } = this.asProps;\n\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', props, tooltipProps);\n eventEmitter.emit('setTooltipVisible', visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nconst ScatterPlotTooltip = (props) => {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ScatterPlot.js","names":["React","transition","Component","Root","sstyled","canUseDOM","uniqueIDEnhancement","createElement","getScatterPlotRadius","Tooltip","PatternFill","style","_sstyled","insert","ScatterPlotRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","document","visible","props","tooltipProps","_ref4","clientX","clientY","eventEmitter","asProps","emit","_createClass","key","value","generateGetBoundingClientRect","x","undefined","y","width","height","top","right","bottom","left","animationCircle","_this$asProps","duration","uid","r","radius","selectRect","selection","selectAll","attr","selectRectNode","node","componentDidUpdate","prevProps","data","componentDidMount","renderCircle","d","i","_ref2","_this$asProps2","color","scale","offset","styles","valueColor","transparent","resolveColor","patterns","_scale","_slicedToArray","xScale","yScale","SScatterPlot","Element","SValue","Number","isNaN","cn","bindHandlerTooltip","xIndex","index","render","_this$asProps3","_scale2","xSize","Math","abs","range","ySize","xMargin","min","yMargin","dataHintsHandler","specifyDataRowFields","establishDataType","Fragment","map","bind","id","ScatterPlotTooltip","_ref","arguments[0]","_ref3","SScatterPlotTooltip","_objectSpread","_assignProps","ScatterPlot","_______childrenComponents"],"sources":["../../src/ScatterPlot.jsx"],"sourcesContent":["import React from 'react';\nimport { transition } from 'd3-transition';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/core/lib/utils/canUseDOM';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\nimport createElement from './createElement';\nimport { getScatterPlotRadius } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill } from './Pattern';\n\nimport style from './style/scatterplot.shadow.css';\n\nclass ScatterPlotRoot extends Component {\n static displayName = 'ScatterPlot';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n static defaultProps = {\n offset: [0, 0],\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, clientY }) => {\n const { eventEmitter } = this.asProps;\n\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', props, tooltipProps);\n eventEmitter.emit('setTooltipVisible', visible);\n };\n\n animationCircle() {\n const { duration, uid, r, value } = this.asProps;\n const radius = r ? r : getScatterPlotRadius(value);\n const selectRect = transition().selection().selectAll(`[id^=${uid}]`).attr('r', 0);\n const selectRectNode = selectRect.node();\n\n if (duration > 0 && selectRectNode) {\n selectRect.transition().duration(duration).attr('r', radius);\n }\n }\n\n componentDidUpdate(prevProps) {\n if (prevProps.data !== this.props.data) {\n this.animationCircle();\n }\n }\n\n componentDidMount() {\n this.animationCircle();\n }\n\n renderCircle(d, i) {\n const {\n color,\n scale,\n x,\n y,\n r,\n offset,\n styles,\n uid,\n duration,\n value,\n valueColor,\n transparent,\n resolveColor,\n patterns,\n } = this.asProps;\n const [xScale, yScale] = scale;\n const SScatterPlot = this.Element;\n const SValue = 'text';\n\n if (Number.isNaN(d[x]) || Number.isNaN(d[y])) {\n return null;\n }\n\n return sstyled(styles)(\n <g\n aria-hidden\n key={`circle(#${i})`}\n onMouseMove={this.bindHandlerTooltip(true, this.props, { xIndex: i, index: i, patterns })}\n onMouseLeave={this.bindHandlerTooltip(false, this.props, { xIndex: i, index: i, patterns })}\n >\n <SScatterPlot\n aria-hidden\n id={`${uid}${i}`}\n index={i}\n render='circle'\n clipPath={`url(#${uid})`}\n cx={xScale(d[x]) + offset[0]}\n cy={yScale(d[y]) + offset[1]}\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-${i}-pattern)` : undefined}\n r={r}\n use:duration={`${duration}ms`}\n transparent={transparent}\n />\n {patterns && (\n <PatternFill\n id={`${uid}-${i}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n {d[value] !== undefined && (\n <SValue\n aria-hidden\n x={xScale(d[x]) + offset[0]}\n y={yScale(d[y]) + offset[1]}\n dy='.3em'\n clipPath={`url(#${uid})`}\n color={resolveColor(valueColor)}\n transparent={transparent}\n >\n {d[value]}\n </SValue>\n )}\n </g>,\n );\n }\n\n render() {\n const { data, uid, scale, x, y, value } = this.asProps;\n const [xScale, yScale] = scale;\n const xSize = Math.abs(xScale.range()[0] - xScale.range()[1]);\n const ySize = Math.abs(yScale.range()[0] - yScale.range()[1]);\n const xMargin = Math.min(xScale.range()[0], xScale.range()[1]);\n const yMargin = Math.min(yScale.range()[0], yScale.range()[1]);\n\n this.asProps.dataHintsHandler.specifyDataRowFields(x, y, value);\n this.asProps.dataHintsHandler.establishDataType('points-cloud');\n\n return (\n <>\n {data.map(this.renderCircle.bind(this))}\n <clipPath id={uid}>\n <rect x={xMargin} y={yMargin} width={`${xSize}px`} height={`${ySize}px`} />\n </clipPath>\n </>\n );\n }\n}\n\nconst ScatterPlotTooltip = (props) => {\n const SScatterPlotTooltip = Root;\n return sstyled(props.styles)(<SScatterPlotTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst ScatterPlot = createElement(ScatterPlotRoot, {\n Tooltip: [ScatterPlotTooltip, Tooltip._______childrenComponents],\n});\n\nexport default ScatterPlot;\n"],"mappings":"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"}
|
package/lib/es6/StackBar.js
CHANGED
|
@@ -9,7 +9,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
|
9
9
|
import React from 'react';
|
|
10
10
|
import { stack as d3Stack } from 'd3-shape';
|
|
11
11
|
import { Component } from '@semcore/core';
|
|
12
|
-
import getOriginChildren from '@semcore/
|
|
12
|
+
import getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';
|
|
13
13
|
import createElement from './createElement';
|
|
14
14
|
import Bar, { MIN_HEIGHT } from './Bar';
|
|
15
15
|
import HorizontalBar, { MIN_WIDTH } from './HorizontalBar';
|
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","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","patterns","_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","isEmptyValue","Number","offsetValue","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, patterns } = 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\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\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 patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = 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 patterns,\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","patterns","_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","isEmptyValue","Number","offsetValue","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/core/lib/utils/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, patterns } = 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\n const isEmptyValue = Number(d[y] - (d[XY0] ?? 0)) === 0;\n\n if (isEmptyValue || absHeight >= hMin) {\n this.offsetBars[seriesIndex][i] = 0;\n } else {\n const offsetValue = hMin - absHeight;\n this.offsetBars[seriesIndex][i] = d[y] > 0 ? offsetValue : -offsetValue;\n }\n\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 patterns,\n };\n }\n\n getHorizontalBarProps({ x, wMin = MIN_WIDTH }, index) {\n const { y, r, scale, maxBarSize, patterns } = 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 patterns,\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
|
@@ -7,7 +7,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
|
7
7
|
import React from 'react';
|
|
8
8
|
import { stack as d3Stack } from 'd3-shape';
|
|
9
9
|
import { Component } from '@semcore/core';
|
|
10
|
-
import getOriginChildren from '@semcore/
|
|
10
|
+
import getOriginChildren from '@semcore/core/lib/utils/getOriginChildren';
|
|
11
11
|
import createElement from './createElement';
|
|
12
12
|
import Area from './Area';
|
|
13
13
|
import { getChartDefaultColorName } from './utils';
|
|
@@ -1 +1 @@
|
|
|
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","_this$asProps2","x","patterns","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/
|
|
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","_this$asProps2","x","patterns","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/core/lib/utils/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, patterns } = this.asProps;\n // or [] if hide area\n const series = this.series.find((s) => s.key === y) || [];\n return {\n color: getChartDefaultColorName(index),\n patterns,\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
|
@@ -6,7 +6,7 @@ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized
|
|
|
6
6
|
import _inherits from "@babel/runtime/helpers/inherits";
|
|
7
7
|
import _createSuper from "@babel/runtime/helpers/createSuper";
|
|
8
8
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
9
|
-
import { sstyled as _sstyled } from "@semcore/
|
|
9
|
+
import { sstyled as _sstyled } from "@semcore/core";
|
|
10
10
|
import { assignProps as _assignProps4 } from "@semcore/core";
|
|
11
11
|
import { assignProps as _assignProps3 } from "@semcore/core";
|
|
12
12
|
import { assignProps as _assignProps2 } from "@semcore/core";
|
|
@@ -16,22 +16,22 @@ import React from 'react';
|
|
|
16
16
|
import { Component, Root, sstyled } from '@semcore/core';
|
|
17
17
|
import Popper from '@semcore/popper';
|
|
18
18
|
import { Box } from '@semcore/flex-box';
|
|
19
|
-
import findComponent from '@semcore/
|
|
19
|
+
import findComponent from '@semcore/core/lib/utils/findComponent';
|
|
20
20
|
import createElement from './createElement';
|
|
21
21
|
import { getChartDefaultColorName } from './utils';
|
|
22
|
-
import { useColorResolver } from '@semcore/
|
|
22
|
+
import { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';
|
|
23
23
|
/*!__reshadow-styles__:"./style/tooltip.shadow.css"*/
|
|
24
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
24
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___STooltip_3vrmv_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_3vrmv_gg_{color:var(--intergalactic-text-secondary, #6c6e79);margin-bottom:var(--intergalactic-spacing-2x, 8px)}.___SDotGroup_3vrmv_gg_{display:flex;align-items:center}.___SDot_3vrmv_gg_{margin-right:var(--intergalactic-spacing-2x, 8px)}.___SDotCircle_3vrmv_gg_.__color_3vrmv_gg_{background-color:var(--color_3vrmv);width:8px;height:8px;border-radius:50%}.___SFooter_3vrmv_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__*/"3vrmv_gg_"),
|
|
25
25
|
/*__reshadow_css_end__*/
|
|
26
26
|
{
|
|
27
|
-
"__STooltip": "
|
|
28
|
-
"__STitle": "
|
|
29
|
-
"__SDotGroup": "
|
|
30
|
-
"__SDot": "
|
|
31
|
-
"__SDotCircle": "
|
|
32
|
-
"_color": "
|
|
33
|
-
"--color": "--
|
|
34
|
-
"__SFooter": "
|
|
27
|
+
"__STooltip": "___STooltip_3vrmv_gg_",
|
|
28
|
+
"__STitle": "___STitle_3vrmv_gg_",
|
|
29
|
+
"__SDotGroup": "___SDotGroup_3vrmv_gg_",
|
|
30
|
+
"__SDot": "___SDot_3vrmv_gg_",
|
|
31
|
+
"__SDotCircle": "___SDotCircle_3vrmv_gg_",
|
|
32
|
+
"_color": "__color_3vrmv_gg_",
|
|
33
|
+
"--color": "--color_3vrmv",
|
|
34
|
+
"__SFooter": "___SFooter_3vrmv_gg_"
|
|
35
35
|
});
|
|
36
36
|
import { PatternSymbol } from './Pattern';
|
|
37
37
|
|
package/lib/es6/Tooltip.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tooltip.js","names":["React","Component","Root","sstyled","Popper","Box","findComponent","createElement","getChartDefaultColorName","useColorResolver","style","_sstyled","insert","PatternSymbol","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","x","y","e","onClick","asProps","_this$state$tooltipPr","state","xIndex","yIndex","_createClass","key","value","getTriggerProps","_this$asProps","hideHoverLine","getPopperProps","excludeAnchorProps","_objectSpread","componentDidMount","_this2","eventEmitter","unsubscribe","push","subscribe","setState","visible","_this2$popper$current","virtualElementPosition","virtualTriggerElement","setTimeout","setPopperTrigger","getBoundingClientRect","_this2$virtualElement","width","height","top","right","bottom","left","popper","current","update","componentWillUnmount","forEach","render","_ref","_this$asProps$pattern","_this3","_this$asProps2","Children","children","tag","forcedAdvancedMode","other","_objectWithoutProperties","_excluded","advancedMode","Tooltip","Trigger","displayName","renderContext","clear","patterns","Provider","_assignProps","handlerCancel","allowedAutoPlacements","_ref9","_this3$popper$current","setTrigger","Fragment","handleTriggerClick","PopperPopper","props","_ref5","STooltip","Element","styles","useCallback","cn","Title","_ref2","arguments[0]","_ref6","STitle","_assignProps2","Dot","_ref3","_ref7","_props$patterns","color","resolveColor","useContext","defaultColor","has","add","SDotGroup","SDot","SDotCircle","_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 { getChartDefaultColorName } from './utils';\nimport { useColorResolver } from '@semcore/utils/lib/use/useColorResolver';\n\nimport style from './style/tooltip.shadow.css';\nimport { PatternSymbol } from './Pattern';\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 const { x, y, hideHoverLine } = this.asProps;\n return { x, y, hideHoverLine };\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 virtualElementPosition = { x: 0, y: 0 };\n virtualTriggerElement = null;\n unsubscribe = [];\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribe.push(\n eventEmitter.subscribe('setTooltipRenderingProps', (anchorProps, tooltipProps) => {\n this.setState({ anchorProps, tooltipProps });\n }),\n eventEmitter.subscribe('setTooltipVisible', (visible) =>\n this.setState({ $visible: visible }),\n ),\n eventEmitter.subscribe('setTooltipPosition', (x, y) => {\n this.virtualElementPosition.x = x;\n this.virtualElementPosition.y = y;\n if (this.virtualTriggerElement === null) {\n this.virtualTriggerElement = {};\n setTimeout(() => {\n this.setPopperTrigger(this.virtualTriggerElement);\n }, 0);\n }\n this.virtualTriggerElement.getBoundingClientRect = () => {\n const { x, y } = this.virtualElementPosition;\n return { width: 0, height: 0, top: y, right: x, bottom: y, left: x };\n };\n this.popper.current?.update();\n }),\n );\n }\n\n componentWillUnmount() {\n this.unsubscribe.forEach((unsubscribe) => unsubscribe());\n }\n\n handleTriggerClick = (e) => {\n const { onClick } = this.asProps;\n const { xIndex, yIndex } = this.state.tooltipProps;\n\n const index = xIndex ?? yIndex;\n\n onClick?.(index, e);\n };\n\n render() {\n const { Children, children, tag, forcedAdvancedMode, onClick, ...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 this.renderContext.patterns = this.asProps.patterns ?? this.state.tooltipProps.patterns;\n\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 explicitTriggerSet\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} onClick={this.handleTriggerClick} />}\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 const patterns = props.patterns ?? renderContext.patterns;\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 const SDotCircle = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} __excludeProps={['data', 'scale']}>\n {patterns ? (\n <SDot>\n <PatternSymbol\n color={resolveColor(color ?? defaultColor)}\n patternKey={color ?? defaultColor}\n />\n </SDot>\n ) : (\n <SDot>\n <SDotCircle color={resolveColor(color ?? defaultColor)} />\n </SDot>\n )}\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","getChartDefaultColorName","useColorResolver","style","_sstyled","insert","PatternSymbol","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","x","y","e","onClick","asProps","_this$state$tooltipPr","state","xIndex","yIndex","_createClass","key","value","getTriggerProps","_this$asProps","hideHoverLine","getPopperProps","excludeAnchorProps","_objectSpread","componentDidMount","_this2","eventEmitter","unsubscribe","push","subscribe","setState","visible","_this2$popper$current","virtualElementPosition","virtualTriggerElement","setTimeout","setPopperTrigger","getBoundingClientRect","_this2$virtualElement","width","height","top","right","bottom","left","popper","current","update","componentWillUnmount","forEach","render","_ref","_this$asProps$pattern","_this3","_this$asProps2","Children","children","tag","forcedAdvancedMode","other","_objectWithoutProperties","_excluded","advancedMode","Tooltip","Trigger","displayName","renderContext","clear","patterns","Provider","_assignProps","handlerCancel","allowedAutoPlacements","_ref9","_this3$popper$current","setTrigger","Fragment","handleTriggerClick","PopperPopper","props","_ref5","STooltip","Element","styles","useCallback","cn","Title","_ref2","arguments[0]","_ref6","STitle","_assignProps2","Dot","_ref3","_ref7","_props$patterns","color","resolveColor","useContext","defaultColor","has","add","SDotGroup","SDot","SDotCircle","_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/core/lib/utils/findComponent';\nimport createElement from './createElement';\nimport { getChartDefaultColorName } from './utils';\nimport { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';\n\nimport style from './style/tooltip.shadow.css';\nimport { PatternSymbol } from './Pattern';\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 const { x, y, hideHoverLine } = this.asProps;\n return { x, y, hideHoverLine };\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 virtualElementPosition = { x: 0, y: 0 };\n virtualTriggerElement = null;\n unsubscribe = [];\n componentDidMount() {\n const { eventEmitter } = this.asProps;\n this.unsubscribe.push(\n eventEmitter.subscribe('setTooltipRenderingProps', (anchorProps, tooltipProps) => {\n this.setState({ anchorProps, tooltipProps });\n }),\n eventEmitter.subscribe('setTooltipVisible', (visible) =>\n this.setState({ $visible: visible }),\n ),\n eventEmitter.subscribe('setTooltipPosition', (x, y) => {\n this.virtualElementPosition.x = x;\n this.virtualElementPosition.y = y;\n if (this.virtualTriggerElement === null) {\n this.virtualTriggerElement = {};\n setTimeout(() => {\n this.setPopperTrigger(this.virtualTriggerElement);\n }, 0);\n }\n this.virtualTriggerElement.getBoundingClientRect = () => {\n const { x, y } = this.virtualElementPosition;\n return { width: 0, height: 0, top: y, right: x, bottom: y, left: x };\n };\n this.popper.current?.update();\n }),\n );\n }\n\n componentWillUnmount() {\n this.unsubscribe.forEach((unsubscribe) => unsubscribe());\n }\n\n handleTriggerClick = (e) => {\n const { onClick } = this.asProps;\n const { xIndex, yIndex } = this.state.tooltipProps;\n\n const index = xIndex ?? yIndex;\n\n onClick?.(index, e);\n };\n\n render() {\n const { Children, children, tag, forcedAdvancedMode, onClick, ...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 this.renderContext.patterns = this.asProps.patterns ?? this.state.tooltipProps.patterns;\n\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 explicitTriggerSet\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} onClick={this.handleTriggerClick} />}\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 const patterns = props.patterns ?? renderContext.patterns;\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 const SDotCircle = Box;\n return sstyled(styles)(\n <SDotGroup render={Box} __excludeProps={['data', 'scale']}>\n {patterns ? (\n <SDot>\n <PatternSymbol\n color={resolveColor(color ?? defaultColor)}\n patternKey={color ?? defaultColor}\n />\n </SDot>\n ) : (\n <SDot>\n <SDotCircle color={resolveColor(color ?? defaultColor)} />\n </SDot>\n )}\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
|
@@ -7,30 +7,30 @@ import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized
|
|
|
7
7
|
import _inherits from "@babel/runtime/helpers/inherits";
|
|
8
8
|
import _createSuper from "@babel/runtime/helpers/createSuper";
|
|
9
9
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
10
|
-
import { sstyled as _sstyled } from "@semcore/
|
|
10
|
+
import { sstyled as _sstyled } from "@semcore/core";
|
|
11
11
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
12
12
|
import React from 'react';
|
|
13
13
|
import { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';
|
|
14
14
|
import { Component, Root, sstyled } from '@semcore/core';
|
|
15
|
-
import canUseDOM from '@semcore/
|
|
15
|
+
import canUseDOM from '@semcore/core/lib/utils/canUseDOM';
|
|
16
16
|
import { FadeInOut } from '@semcore/animation';
|
|
17
17
|
import createElement from './createElement';
|
|
18
18
|
import { getChartDefaultColorName } from './utils';
|
|
19
19
|
import Tooltip from './Tooltip';
|
|
20
20
|
import { PatternFill } from './Pattern';
|
|
21
|
-
import uniqueIDEnhancement from '@semcore/
|
|
21
|
+
import uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';
|
|
22
22
|
/*!__reshadow-styles__:"./style/venn.shadow.css"*/
|
|
23
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
23
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SCircle_wmt8p_gg_,.___SIntersection_wmt8p_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px}.___SCircle_wmt8p_gg_{fill:var(--intergalactic-chart-palette-order-2, #59ddaa);fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_wmt8p);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_wmt8p_gg_:hover{fill-opacity:.7}}.___SCircle_wmt8p_gg_.__color_wmt8p_gg_{fill:var(--color_wmt8p)}.___SCircle_wmt8p_gg_.__pattern_wmt8p_gg_.__color_wmt8p_gg_{fill:var(--pattern_wmt8p);fill-opacity:.7;stroke:var(--color_wmt8p);stroke-width:1px}@media (hover:hover){.___SCircle_wmt8p_gg_.__pattern_wmt8p_gg_.__color_wmt8p_gg_:hover{fill-opacity:.85}}.___SCircle_wmt8p_gg_.__transparent_wmt8p_gg_{opacity:.3}.___SIntersection_wmt8p_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_wmt8p_gg_:hover{fill-opacity:.1}}.___SIntersection_wmt8p_gg_.__transparent_wmt8p_gg_{opacity:.3}", /*__inner_css_end__*/"wmt8p_gg_"),
|
|
24
24
|
/*__reshadow_css_end__*/
|
|
25
25
|
{
|
|
26
|
-
"__SCircle": "
|
|
27
|
-
"_color": "
|
|
28
|
-
"--color": "--
|
|
29
|
-
"_transparent": "
|
|
30
|
-
"__SIntersection": "
|
|
31
|
-
"--duration": "--
|
|
32
|
-
"_pattern": "
|
|
33
|
-
"--pattern": "--
|
|
26
|
+
"__SCircle": "___SCircle_wmt8p_gg_",
|
|
27
|
+
"_color": "__color_wmt8p_gg_",
|
|
28
|
+
"--color": "--color_wmt8p",
|
|
29
|
+
"_transparent": "__transparent_wmt8p_gg_",
|
|
30
|
+
"__SIntersection": "___SIntersection_wmt8p_gg_",
|
|
31
|
+
"--duration": "--duration_wmt8p",
|
|
32
|
+
"_pattern": "__pattern_wmt8p_gg_",
|
|
33
|
+
"--pattern": "--pattern_wmt8p"
|
|
34
34
|
});
|
|
35
35
|
var VennRoot = /*#__PURE__*/function (_Component) {
|
|
36
36
|
_inherits(VennRoot, _Component);
|
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","getChartDefaultColorName","Tooltip","PatternFill","uniqueIDEnhancement","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","clientX","clientY","eventEmitter","asProps","emit","forwardRef","ref","_extends","tag","_createClass","key","value","generateGetBoundingClientRect","x","undefined","y","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","patterns","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","resolveColor","uid","minRadius","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","Fragment","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 { getChartDefaultColorName } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill } from './Pattern';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\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 minRadius: 6,\n };\n static enhance = [uniqueIDEnhancement()];\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, clientY }) => {\n const { eventEmitter } = this.asProps;\n\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', props, tooltipProps);\n eventEmitter.emit('setTooltipVisible', visible);\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 patterns: this.asProps.patterns,\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 uid: `${this.asProps.uid}-${index}`,\n patterns: this.asProps.patterns,\n minRadius: this.asProps.minRadius,\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 uid,\n patterns,\n minRadius,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const radius = data.radius < minRadius ? minRadius : data.radius;\n if (data.radius === 0) return null;\n\n return (\n <>\n {sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n cx={data.x}\n cy={data.y}\n r={radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\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","getChartDefaultColorName","Tooltip","PatternFill","uniqueIDEnhancement","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","clientX","clientY","eventEmitter","asProps","emit","forwardRef","ref","_extends","tag","_createClass","key","value","generateGetBoundingClientRect","x","undefined","y","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","patterns","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","resolveColor","uid","minRadius","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","Fragment","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/core/lib/utils/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\nimport createElement from './createElement';\nimport { getChartDefaultColorName } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill } from './Pattern';\nimport uniqueIDEnhancement from '@semcore/core/lib/utils/uniqueID';\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 minRadius: 6,\n };\n static enhance = [uniqueIDEnhancement()];\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, clientY }) => {\n const { eventEmitter } = this.asProps;\n\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', props, tooltipProps);\n eventEmitter.emit('setTooltipVisible', visible);\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 patterns: this.asProps.patterns,\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 uid: `${this.asProps.uid}-${index}`,\n patterns: this.asProps.patterns,\n minRadius: this.asProps.minRadius,\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 uid,\n patterns,\n minRadius,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const radius = data.radius < minRadius ? minRadius : data.radius;\n if (data.radius === 0) return null;\n\n return (\n <>\n {sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n cx={data.x}\n cy={data.y}\n r={radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\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,7 +1,7 @@
|
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
2
2
|
import _extends from "@babel/runtime/helpers/extends";
|
|
3
3
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
4
|
-
import { sstyled as _sstyled } from "@semcore/
|
|
4
|
+
import { sstyled as _sstyled } from "@semcore/core";
|
|
5
5
|
import { assignProps as _assignProps3 } from "@semcore/core";
|
|
6
6
|
import { assignProps as _assignProps2 } from "@semcore/core";
|
|
7
7
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
@@ -10,12 +10,12 @@ 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__*/".
|
|
13
|
+
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlotA11yModule_i0svk_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_i0svk_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}", /*__inner_css_end__*/"i0svk_gg_"),
|
|
14
14
|
/*__reshadow_css_end__*/
|
|
15
15
|
{
|
|
16
|
-
"__SPlotA11yModule": "
|
|
16
|
+
"__SPlotA11yModule": "___SPlotA11yModule_i0svk_gg_"
|
|
17
17
|
});
|
|
18
|
-
import { Context as I18nContext, useI18n } from '@semcore/
|
|
18
|
+
import { Context as I18nContext, useI18n } from '@semcore/core/lib/utils/enhances/WithI18n';
|
|
19
19
|
import { Box } from '@semcore/flex-box';
|
|
20
20
|
var globalWasFocused = false;
|
|
21
21
|
var globalNavWithKeyboard = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlotA11yModule.js","names":["React","normalizeLocale","localizedMessages","Root","sstyled","styles","_sstyled","insert","Context","I18nContext","useI18n","Box","globalWasFocused","globalNavWithKeyboard","PlotA11yModule","props","_ref","arguments[0]","_ref5","SPlotA11yModule","_React$useState","useState","_React$useState2","_slicedToArray","wasFocused","setWasFocused","_React$useState3","_React$useState4","navWithKeyboard","setNavWithKeyboard","_React$useState5","_React$useState6","plotA11yView","setPlotA11yView","hadnleHiddenElementsFocus","useCallback","_React$useState7","_React$useState8","loading","setLoading","_React$useState9","_React$useState10","error","setError","contextLocale","useContext","locale","useMemo","_props$locale","t","useEffect","_props$plotRef$curren","focusListener","plotRef","current","addEventListener","_props$plotRef$curren2","removeEventListener","_document$body","keyboardListener","event","navigationKeys","includes","key","document","body","_document$body2","shouldDisplayView","then","_ref6","PlotA11yView","Component","console","_ref2","createElement","_extends","_ref3","cn","_objectSpread","_assignProps","_ref4","_assignProps2","_assignProps3"],"sources":["../../../src/a11y/PlotA11yModule.tsx"],"sourcesContent":["import React from 'react';\nimport { DataStructureHints, PartialDataSummarizationConfig } from './hints';\nimport { normalizeLocale } from './locale';\nimport { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yModule.shadow.css';\nimport { Context as I18nContext, useI18n } from '@semcore/
|
|
1
|
+
{"version":3,"file":"PlotA11yModule.js","names":["React","normalizeLocale","localizedMessages","Root","sstyled","styles","_sstyled","insert","Context","I18nContext","useI18n","Box","globalWasFocused","globalNavWithKeyboard","PlotA11yModule","props","_ref","arguments[0]","_ref5","SPlotA11yModule","_React$useState","useState","_React$useState2","_slicedToArray","wasFocused","setWasFocused","_React$useState3","_React$useState4","navWithKeyboard","setNavWithKeyboard","_React$useState5","_React$useState6","plotA11yView","setPlotA11yView","hadnleHiddenElementsFocus","useCallback","_React$useState7","_React$useState8","loading","setLoading","_React$useState9","_React$useState10","error","setError","contextLocale","useContext","locale","useMemo","_props$locale","t","useEffect","_props$plotRef$curren","focusListener","plotRef","current","addEventListener","_props$plotRef$curren2","removeEventListener","_document$body","keyboardListener","event","navigationKeys","includes","key","document","body","_document$body2","shouldDisplayView","then","_ref6","PlotA11yView","Component","console","_ref2","createElement","_extends","_ref3","cn","_objectSpread","_assignProps","_ref4","_assignProps2","_assignProps3"],"sources":["../../../src/a11y/PlotA11yModule.tsx"],"sourcesContent":["import React from 'react';\nimport { DataStructureHints, PartialDataSummarizationConfig } from './hints';\nimport { normalizeLocale } from './locale';\nimport { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yModule.shadow.css';\nimport { Context as I18nContext, useI18n } from '@semcore/core/lib/utils/enhances/WithI18n';\nimport { Box } from '@semcore/flex-box';\n\nlet globalWasFocused = false;\nlet globalNavWithKeyboard = false;\n\nexport type A11yViewProps = {\n id: string;\n data: Record<string, unknown>[];\n hints: DataStructureHints;\n plotLabel: string;\n locale: NavigatorLanguage['language'];\n config: PartialDataSummarizationConfig;\n\n plotRef: React.RefObject<HTMLElement>;\n};\n\nexport const PlotA11yModule: React.FC<A11yViewProps> = (props) => {\n const SPlotA11yModule = Root;\n const [wasFocused, setWasFocused] = React.useState(globalWasFocused);\n const [navWithKeyboard, setNavWithKeyboard] = React.useState(globalNavWithKeyboard);\n const [plotA11yView, setPlotA11yView] = React.useState<{\n Component: React.FC<A11yViewProps>;\n } | null>(null);\n\n const hadnleHiddenElementsFocus = React.useCallback(() => {\n setWasFocused(true);\n setNavWithKeyboard(true);\n }, []);\n\n const [loading, setLoading] = React.useState(false);\n const [error, setError] = React.useState<Error | null>(null);\n\n const contextLocale = React.useContext(I18nContext);\n const locale = React.useMemo(\n () => normalizeLocale(props.locale ?? contextLocale, localizedMessages),\n [props.locale],\n );\n const t = useI18n(localizedMessages, locale!);\n\n React.useEffect(() => {\n if (wasFocused) return;\n const focusListener = () => {\n globalWasFocused = true;\n setWasFocused(true);\n };\n\n props.plotRef.current?.addEventListener('focus', focusListener);\n return () => props.plotRef.current?.removeEventListener('focus', focusListener);\n }, [wasFocused, props.plotRef]);\n React.useEffect(() => {\n if (navWithKeyboard) return;\n const keyboardListener = (event: Event) => {\n const navigationKeys = [\n 'Tab',\n 'ArrowUp',\n 'ArrowLeft',\n 'ArrowDown',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowLeft',\n ];\n if ('key' in event && navigationKeys.includes((event as KeyboardEvent).key)) {\n setNavWithKeyboard(true);\n globalNavWithKeyboard = true;\n }\n };\n document.body?.addEventListener('keydown', keyboardListener);\n return () => document.body?.removeEventListener('keydown', keyboardListener);\n }, [navWithKeyboard]);\n\n const shouldDisplayView = wasFocused && navWithKeyboard;\n\n React.useEffect(() => {\n if (!shouldDisplayView) return;\n if (plotA11yView) return;\n if (loading) return;\n\n setLoading(true);\n\n import('./PlotA11yView')\n .then(({ PlotA11yView }) => {\n setPlotA11yView({ Component: PlotA11yView });\n setLoading(false);\n setError(null);\n })\n .catch((error) => {\n console.error(error);\n setError(error);\n });\n }, [plotA11yView, shouldDisplayView, loading, setLoading]);\n\n if (plotA11yView) {\n return sstyled(styles)(\n <plotA11yView.Component {...props} locale={locale!} />,\n ) as React.ReactElement;\n }\n\n if (error) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='assertive'>\n {t('failed')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n if (loading) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='polite'>\n {t('loading')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} onFocus={hadnleHiddenElementsFocus}>\n {t('disabled')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
2
2
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
|
-
import { sstyled as _sstyled } from "@semcore/
|
|
3
|
+
import { sstyled as _sstyled } from "@semcore/core";
|
|
4
4
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
5
5
|
import React from 'react';
|
|
6
6
|
import { heavyFindNextFocusableElement } from './focus';
|
|
@@ -9,13 +9,13 @@ import { getIntl } from './intl';
|
|
|
9
9
|
import { summarize } from './summarize';
|
|
10
10
|
import { Root, sstyled } from '@semcore/core';
|
|
11
11
|
/*!__reshadow-styles__:"../style/plotA11yView.shadow.css"*/
|
|
12
|
-
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
12
|
+
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlotA11yView_1anfm_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_1anfm_gg_:focus,.___SPlotA11yView_1anfm_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_1anfm_gg_ a{cursor:pointer;-webkit-text-decoration:underline;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_1anfm_gg_ table,.___SPlotA11yView_1anfm_gg_ td,.___SPlotA11yView_1anfm_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}", /*__inner_css_end__*/"1anfm_gg_"),
|
|
13
13
|
/*__reshadow_css_end__*/
|
|
14
14
|
{
|
|
15
|
-
"__SPlotA11yView": "
|
|
15
|
+
"__SPlotA11yView": "___SPlotA11yView_1anfm_gg_"
|
|
16
16
|
});
|
|
17
17
|
import { Box } from '@semcore/flex-box';
|
|
18
|
-
import { useAsyncI18nMessages } from '@semcore/
|
|
18
|
+
import { useAsyncI18nMessages } from '@semcore/core/lib/utils/enhances/i18nEnhance';
|
|
19
19
|
import { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';
|
|
20
20
|
import { DataAccessibilityTable } from './DataAccessibilityTable';
|
|
21
21
|
export var PlotA11yView = function PlotA11yView(_ref3) {
|